【发布时间】:2019-05-20 19:15:18
【问题描述】:
我正在尝试获得具有多对多关系的所有角色权限。我想获得单个角色的所有权限。在这里,我尝试使用 groupBy 但它给了我错误。
$search_role = DB::table('roles')
->join('roles_permissions','roles_permissions.role_id','roles.id')
->join('permissions','permissions.id','roles_permissions.permission_id')
->where('roles.name', 'like', "%$request->searcher%")
->orWhere('permissions.name', 'like', "%$request->searcher%")
->select('roles.name as role_name', 'permissions.name as permission_name','roles_permissions.*')
->groupBy('roles_permissions.role_id')
->get();
此处出错: roles_permissions.permission_id 不在 groupBy 中。
如果我添加,我会得到另一列不在 groupBy 中。
【问题讨论】:
-
嗨。这是一个常见问题解答。请始终使用谷歌错误消息和许多清晰、简洁和特定的版本/措辞,使用和不使用您的特定字符串/名称和“site:stackoverflow.com”和标签并阅读许多答案。将您发现的相关关键字添加到搜索中。如果您没有找到答案,请发布,使用 1 个变体搜索作为标签的标题和关键字。请参阅向下投票箭头鼠标悬停文本。如果您确实有要发布的非重复代码问题,请阅读并通过minimal reproducible example 采取行动。