@mohaligateway
@muhammad
@ali.bayat
@Rp76
کاربرد این متددwithpivot چیست
return $this->belongsToMany('Establishment')->withPivot('start', 'stop', 'study_level_id')->withTimestamps();
روابط چند به چند به یه جدول میانی یا pivot table نیاز دارند
مثلا اگر مدلهای Post و Tag رو داشته باشیم، نهایتا به یه جدول pos_tag هم نیاز داریم، که به صورت پیشفرض ۲ فیلد post_id و tag_id درش ذخیره میشه
حالا مواقعی پیش میاد که نیاز داری به جز این ۲ تا فیلد، فیلد های دیگه رو هم در pivot ذخیره کنی
در این شرایط از متد withPivot استفاده میکنند
مثلا توی کدی که گذاشتی با استفاده از این متد حالا فیلدهای start, stop و study_level_id هم مقدار دهی میشند
پس در حین استفاده از این رابطه باید آن فیلد هارو هم پاس داد
$pivotAdditionals = [
'start' => '',
'stop' => '',
'study_level_id' => '',
];
$model->relation()->attach($relationId, $pivotAdditionals);
وقتی در Pivot Table ستونهای دیگری داشته باشیم و بخواییم ازشون استفاده کنیم، با withPivot معرفی میکنیم و بعدا از
$model->pivot->column_name
میگیریم.
به نظرم داره به جدول واسط اشاره میکنه و میگه فیلدهای start و stop رو از جدول واسط بگیر براساس فیلد آیدی study_level_id
سلام
می توانید برای کسب اطلاعات به لینک زیر برید
https://laravel.com/docs/8.x/eloquent-relationships
@ftp
روابط چند به چند به یه جدول میانی یا pivot table نیاز دارند
مثلا اگر مدلهای Post و Tag رو داشته باشیم، نهایتا به یه جدول pos_tag هم نیاز داریم، که به صورت پیشفرض ۲ فیلد post_id و tag_id درش ذخیره میشه
حالا مواقعی پیش میاد که نیاز داری به جز این ۲ تا فیلد، فیلد های دیگه رو هم در pivot ذخیره کنی
در این شرایط از متد withPivot استفاده میکنند
مثلا توی کدی که گذاشتی با استفاده از این متد حالا فیلدهای start, stop و study_level_id هم مقدار دهی میشند
پس در حین استفاده از این رابطه باید آن فیلد هارو هم پاس داد
$pivotAdditionals = [
'start' => '',
'stop' => '',
'study_level_id' => '',
];
$model->relation()->attach($relationId, $pivotAdditionals);
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟