PDA

View Full Version : yii، migration ارتباط جداول رو چطوری تشخیص میده ؟



armanb2013
جمعه 01 فروردین 1393, 17:13 عصر
سلام
وقتی کد زیر تو قسمت migration مینویسیم و اجرا میکنیم


$this->addForeignkey("fk_issue_project","tbl_issue","project_id","tbl_project","id","CASCADE","RESTRICT");



و موقع ساخت مدل ، build relation چطور تشخیص میده که این ارتباط چند به چند هست ؟

آیا به اینصورته که میاد نگاه میکنه فیلد کلید خارجی جدول اول که اینجا میشه project_id ؛ چون تو جدول issue کلیداصلی نیست پس ارتباطش n میشه و فیلد id چون کلید اصلی جدول project هست ارتباط اش 1 میشه .

آیا چیزی که بالا نوشتم درسته ؟؟ با تشکر

desatir7316
جمعه 01 فروردین 1393, 18:53 عصر
سال نو مبارک
بله درسته

MMSHFE
جمعه 01 فروردین 1393, 20:15 عصر
کلاً توی ارتباطها اگه کلید خارجی به کلید اصلی باشه، یکی از دو حالت 1 به n یا 1 به 1 هست که پیشفرض 1 به n درنظر میگیره مگه اینکه توی اون جدولی که کلید خارجی تعریف شده، اون رو Unique کرده باشین که میشه 1 به 1 و اگه ارتباط ازطریق یک جدول واسطه باشه که دو تا کلید خارجی داره به کلیدهای اصلی دو تا جدول دیگه، ارتباط n به n بین اون دو جدول دیگه که حاوی کلیدهای اصلی هستن، برقرار میشه.