【发布时间】:2014-10-08 06:52:41
【问题描述】:
我有一个用户表、一个角色表和一个角色用户表。
一个用户有很多角色。
一个角色属于多个用户。
已在每个模型上定义了关系。
我需要确定特定用户是否具有角色。角色可以是字符串或角色数组。
对于初学者,我尝试只寻找一个角色头衔。
我试过了:
Role::with(array('users' => function($query){
$query->where('title', '=', 'Admin');
}))->get();
但没有运气。如何搜索一个特定的用户 ID?
【问题讨论】:
-
您的代码看起来正确。 “admin”是用户或角色的头衔吗?究竟是什么不工作?你检查过查询日志吗?看看 DB::getQueryLog()。如果直接在 SQL 中运行查询,会发生什么?另请查看 has(),因为您可能希望使用它仅返回具有用户的角色,反之亦然。
-
Admin 是用户角色的标题。上面的代码确实有效,但我该如何自定义它,以便我可以搜索多个角色,例如。 Admin/Public/Whatever 以及如何将搜索限制为特定用户?
标签: laravel laravel-4 eloquent