【发布时间】:2015-10-14 06:37:20
【问题描述】:
我有 3 个表代表 User 和 Group 和 GroupUser 之间的多对多(属于多多)关系作为数据透视表。我想做的只是显示所有不是group_id 2成员的用户。
User model GroupUser model (pivot table) Group model
ID|name ID|user_id|group_id ID|group_name
1 |Mark 1| 1 |2 1| the sharks
2 |Sam 2| 3 |1 2| the tigers
3 |Sally 3| 2 |3 3| the whales
4 |Tim 4| 4 |2
我的解决方案 在 User 和 GroupUser 之间创建 belongsTo (hasMany) 关系,以便 GroupUser belongsTo User 然后立即加载所有不是 group_id 2 成员的用户。
如何在控制器中编写代码并在刀片中查看?
在我使用 WhereNotIn 条件之前,我试图简单地预先加载所有用户。到目前为止,我有这个,但由于某种原因,它只读取 group_user 表中的最后一行。
foreach (GroupUser::with('belongstomethod')->get() as $query)
{
$query->belongstomethod->name;
}
上面代码的结果是 Tim
【问题讨论】: