Laravel ManyToMany 中间表

我想弄清楚如何在 Laravel 中使用 EloquentORM 解决以下问题。


我有 3 张桌子。


User:

-id


Agreement:

-id

-title

-date_created


Accepted_Agreements:

-user_id

-agreement_id

-date_accepted

那么,如何获得特定用户的所有协议和 -date_accepted 列?


叮当猫咪
浏览 68回答 1
1回答

胡子哥哥

假设您已经在 agreements() 和 user() 函数中定义了多对多关系。public function agreements() {   return $this->belongsToMany('App\Agreement')->withPivot('date_accepted');}然后你可以通过以下方式获得所需的:$agreements = $user->agreements;foreach($agreements as $agreement) {   $dateAccepted = $agreement->pivot->date_accepted;}
打开App,查看更多内容
随时随地看视频慕课网APP