php – Laravel:如何通过Eager Loading获取基表的选定列?
发布时间:2020-12-14 19:37:28 所属栏目:大数据 来源:网络整理
导读:例如这里的表结构. User------id-role_id-fname-lname-country_code-mobile-password-remember_token-email-address-location_id 另一张桌子 Role------id-name 现在,如果我想要来自带有角色表的用户表的所有用户信息,我将这样写. $user = User :: with(‘Ro
例如这里的表结构.
User ----- -id -role_id -fname -lname -country_code -mobile -password -remember_token -email -address -location_id 另一张桌子 Role ----- -id -name 现在,如果我想要来自带有角色表的用户表的所有用户信息,我将这样写. $user = User :: with(‘Role’) – > where(‘users.id’,$id) – > first() – > toArray(); 但它将从用户表中获取所有数据. 我知道如何选择关联表的特定列,如下所示. public function Role(){ return $this->belongsTo('AppRole')->select('id','name as role_name'); } 但是如何使用with()选择User表的特定列? 解决方法
尝试这样的事情(我用头写,测试它):
$user = User::with('Role') ->where('users.id',$id) ->select('users.fname','users.lname','users.mobile','users.email','roles.name as role_name') ->first()->toArray(); 或直接使用joints. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |