Laravel的pluck方法取不到数据,求助

这两天研究一下entrust这个包,

先跑一下完整的RBAC流程,结果报了这个错

https://img.mukewang.com/5c8f6475000195c903600145.jpg

pluck()方法取不出来数据

这里是代码...

https://img3.mukewang.com/5c8f64760001157506330459.jpg

$user这里的链式调用没什么问题啊,,,

研究了一会还是不知其所以然,求助...为什么pluck()方法会取不到数据,很是费解

补充:

这个是打印$user的值;

https://img1.mukewang.com/5c8f64770001edd205310587.jpg

这个是打印出来$roles的值

https://img3.mukewang.com/5c8f647800010f9901830129.jpg

取出user表中id与roles表中相等的id,

这里是我的user_role关系表中的数据

https://img.mukewang.com/5c8f64790001a40b01960147.jpg

没什么问题吧...

....

改成这个

$userRole = $user->roles()->pluck('id','id')->toArray();//

之后,报这个错...

https://img3.mukewang.com/5c8f647a000189df03080140.jpg

RISEBY
浏览 1084回答 3
3回答

慕沐林林

检查下 User模型里面的 roles方法

侃侃尔雅

这应该是多对多模型关联,而且定义了一个自定义模型来表示中间表的关联看看Model里面是否正确定义了这方法,命名空间也可能出错。 class Role extends Model { /** * 属于该身份的用户。 */ public function users() { return $this->belongsToMany('App\User')->using('App\UserRole'); } }

holdtom

不是pluck()取不到数据,是$user->roles返回的是null
打开App,查看更多内容
随时随地看视频慕课网APP