Php romove obj来自查询laravel obj['pivot']

Php romove obj来自查询laravel obj['pivot'],php,laravel,eloquent,spatie,laravel-permission,Php,Laravel,Eloquent,Spatie,Laravel Permission,我的查询,我正在使用laravel权限空间。因为我需要显示数据,它将返回相同的格式。不需要显示枢轴。 如果您看到,透视图是进入员工->用户->角色->透视图 回应 [ { "employ":"Juan", "age":21, "user":{ "id":5, "name":"mario m

我的查询,我正在使用laravel权限空间。因为我需要显示数据,它将返回相同的格式。不需要显示枢轴。
如果您看到,透视图是进入员工->用户->角色->透视图

回应

 [
   {
      "employ":"Juan",
      "age":21,
      "user":{
         "id":5,
         "name":"mario maradionio",
         "email":"empleado@gmail.com",
         "tipo_usuario":null,
         "roles":[
            {
               "id":1,
               "name":"root",
               "pivot":{
                  "model_id":5,
                  "role_id":1,
                  "model_type":"App\\User"
               }
            },
            {
               "id":2,
               "name":"Alumno",
               "pivot":{
                  "model_id":5,
                  "role_id":2,
                  "model_type":"App\\User"
               }
            },
            {
               "id":3,
               "name":"Encargado",
               "pivot":{
                  "model_id":5,
                  "role_id":3,
                  "model_type":"App\\User"
               }
            }
         ]
      }
   ]
模型 使用空间\权限\特征\角色

class User extends Authenticatable
{   
    use Notifiable;
    use HasRoles;
}
使用集合它不显示角色,只显示一个角色,并且角色的de name为null

[
            'id'         => $this->id,
            'employe'       => $this->name,
            'user' => [
               'id' => $this->id,
               'name' => $this->name,
               'roles' => [
                    'id' => $this->id,
                    'name' => $this->name
               ]
            ]
        ];

您应该创建一个资源类并返回它

公共功能指数 { $employees=雇员::其中'estado',1 ->使用“user.roles” ->得到; return EmployeeResource::collection$employees; }
您可以参考文档来创建资源:

在Role.php模型中添加隐藏属性

创建Role.php并扩展Spatie\Permission\Models\Role


如果您看到,pivot是进入employes->user->roles->pivot的,它不适用于roles pivot,您需要将此代码放在Role.php模型中,但我使用trait use HasRoles;模型用户如果使用资源::集合“'user'=>['id'=>$this->id,'name'=>$this->name,'roles'=>['id'=>$this->id,'name'=>$this->name]]`角色名称无效,请退出空用户:{id:5,名称:null,角色:{id:5,名称:null}
[
            'id'         => $this->id,
            'employe'       => $this->name,
            'user' => [
               'id' => $this->id,
               'name' => $this->name,
               'roles' => [
                    'id' => $this->id,
                    'name' => $this->name
               ]
            ]
        ];