我正在尝试加载属于权限的所有角色。 $permissions = \App\Permission::with('roles')->get();
当我尝试和return $permissions->roles;
时,即使我已经设置了适当的关系,也会遇到此错误:
此收藏夹中不存在属性[角色]
权限模型关系
public function roles()
{
return $this->belongsToMany(Role::class);
}
当我简单地return $permissions;
时,我得到适当的输出:
[
{
"id":1,
"name":"edit_post",
"label":"Edit Posts",
"created_at":null,
"updated_at":null,
"roles":[
{
"id":1,
"name":"admin",
"label":"Admin",
"created_at":null,
"updated_at":null,
"pivot":{
"permission_id":1,
"role_id":1
}
}
]
},
{
"id":2,
"name":"delete_post",
"label":"Delete Posts",
"created_at":null,
"updated_at":null,
"roles":[
{
"id":1,
"name":"admin",
"label":" Admin",
"created_at":null,
"updated_at":null,
"pivot":{
"permission_id":2,
"role_id":1
}
}
]
}
]
我不确定这是怎么回事。
答案 0 :(得分:1)
您需要遍历权限角色。
foreach ($permissions as $permission) {
return $permission->roles;
}