php - 如何使用 Eloquent 通过外键值从数据库中获取所有行?
问题描述
我在我的网站上使用 Laravel 并使用 Eloquent 来管理我的数据库。我有具有角色的用户。这在我的数据库中看起来像这样:
|USERS |
|----------------------------------|
| ID | EMAIL | ... | ROLE_ID | ... |
|ROLES |
|------------|
| ID | LABEL |
我想通过他们的角色标签选择用户。
我尝试使用 join 和 where 函数,但我不知道为什么返回的用户将ID
他们的ROLE_ID
.
$admins = DB::table('users')
->leftJoin('roles', 'users.role_id', '=', 'roles.id')
->where('roles.label','=', 'admin')
->get();
这是返回的用户之一:
object(stdClass)[285]
public 'id' => int 3
...
public 'role_id' => int 3
...
这个ID
用户的在数据库中是 2。如果我将其更改ROLE_ID
为 1,它ID
也将更改为 1。
我在互联网上寻找解决方案,但我真的不知道要寻找什么,所以我没有找到任何东西。
我相信这很简单,但我还是被卡住了。
解决方案
推荐阅读
- python - 如何将其编写为单个 for 循环?
- java - 在 android studio 中使用一个按钮在片段之间导航
- jolt - 将 JOLT 转换应用于 JSON 数据
- uniface - 2012 - 表单中的出现与数据库出现不匹配
- python - 在具有重复键的字典(带有值数组)中查找值
- java - rabbitmq的奇怪消息正文字节大小
- sequelize.js - 如何在数据插入期间正确定义 Sequelize 关联
- java - ClusterHealthResponse 未返回 Elastic Search 6.8 中的所有索引
- excel - VBA Excel在循环创建的最后一行之外添加值和公式
- reactjs - AntDesign TimePicker 作为 Material UI 中的输入组件