Php Laravel LeftJoin使用相似名称连接多个查询
我需要在管理员列表(管理员表)中显示角色名称(角色表)。我使用Php Laravel LeftJoin使用相似名称连接多个查询,php,laravel,laravel-5,eloquent,Php,Laravel,Laravel 5,Eloquent,我需要在管理员列表(管理员表)中显示角色名称(角色表)。我使用leftJoinquery: $data = Admin::select('admins.*', 'roles.name') ->leftJoin('model_has_roles', 'model_has_roles.model_id', '=', 'admins.id') ->leftJoin('roles', 'roles.id', '=', 'model_has_roles.r
leftJoin
query:
$data = Admin::select('admins.*', 'roles.name')
->leftJoin('model_has_roles', 'model_has_roles.model_id', '=', 'admins.id')
->leftJoin('roles', 'roles.id', '=', 'model_has_roles.role_id')
->get();
在动作print\r($data)
中,我看到以下输出:
(
[id] => 1
[name] => administrator
[email] => m@m.com
[password] => $2y$10$7/HMHGIPIJ6FiNBLy.BynurEhcsrbWkbc4wFREN9qjAFGNqSdaFTS
[remember_token] =>
[created_at] => 2020-02-11 10:46:45
[updated_at] => 2020-02-11 10:46:45
[sex] =>
[dob] =>
[mobile] =>
[phone] =>
[address] =>
[street] =>
[city] =>
[district] =>
[state] =>
[country] =>
[photo] =>
[web] =>
[status] => New
[upload_folder] =>
[deleted_at] =>
)
这工作,但我看不到列表中的管理员姓名
!在输出中,角色名称
替换为管理员名称
([name]=>管理员
)
如何解决此问题并显示
管理员表
+角色表名称中的所有值 您可以将您的角色别名。名称如下
改变
到
您是否尝试过为您的角色别名。名称?例如$data=Admin::select('admins.*,'roles.name as RoleName')@Sehdev:Oh谢谢。请补充回答欢迎。我已经补充了。别忘了接受并投票表决答案。:)
$data = Admin::select('admins.*', 'roles.name')
$data = Admin::select('admins.*', 'roles.name as RoleName')