渲染与使用紧凑获取刀片中的渴望加载数据有很多关系

时间:2019-11-17 05:57:35

标签: laravel controller laravel-blade laravel-6

我在刀片视图中使用@foreach将这种格式的数据作为单个数据对象-

{ 
   "id":55,
   "role_id":2,
   "first_name":"Ashiqur",
   "avatar":"users\/default.png",
   "created_at":"2019-11-13 09:29:25",
   "updated_at":"2019-11-13 09:29:45",
   "language_id":1,
   "level_id":1,
   "status":0,
   "phone":"8801939622736487",
   "address_id":1,
   "last_name":"Rahman",
   "level":{ 
      "id":1,
      "name":"Standard",         
      "created_at":"2019-10-08 05:30:00",
      "updated_at":"2019-11-07 10:19:45",          
      "document_type":[ 
         { 
            "id":1,
            "name":"Document 1",
            "created_at":"2019-10-08 05:51:31",
            "updated_at":"2019-10-08 05:51:31",
            "user_level_id":1,
            "doc_list":{ 
               "id":2,
               "user_id":55,
               "name":"Doc",
               "doc":"phpZAdbQp.jpg",
               "created_at":"2019-11-13 11:09:31",
               "updated_at":"2019-11-13 11:09:31",
               "doc_type_id":1,
               "doc_status_id":11,
               "doc_check":{ 
                  "name":null,
                  "status_id":9,
                  "doc_id":2,
                  "status":{ 
                     "id":9,
                     "name":"Rejected",
                     "created_at":"2019-10-28 11:32:38",
                     "updated_at":"2019-10-28 11:32:38"
                  }
               },
               "status":{ 
                  "id":11,
                  "name":"Not Verified",
                  "created_at":"2019-11-08 10:38:59",
                  "updated_at":"2019-11-08 10:38:59"
               }
            }
         },
         { 
            "id":2,
            "name":"Photo",
            "created_at":"2019-10-08 06:00:18",
            "updated_at":"2019-10-08 06:00:18",
            "user_level_id":1,
            "doc_list":{ 
               "id":9,
               "user_id":55,
               "name":"Photo",
               "doc":"phpXOuA5o.jpg",
               "created_at":"2019-11-14 05:17:46",
               "updated_at":"2019-11-14 05:17:46",
               "doc_type_id":2,
               "doc_status_id":11,
               "doc_check":{ 
                  "name":null,
                  "status_id":9,
                  "doc_id":9,
                  "status":{ 
                     "id":9,
                     "name":"Rejected",
                     "created_at":"2019-10-28 11:32:38",
                     "updated_at":"2019-10-28 11:32:38"
                  }
               },
               "status":{ 
                  "id":11,
                  "name":"Not Verified",
                  "created_at":"2019-11-08 10:38:59",
                  "updated_at":"2019-11-08 10:38:59"
               }
            }
         }
      ]
   }
}

我正在使用紧凑功能从控制器获取数据以进行查看。

  

我的控制器-

$allDatas = User::where('status', 0)
        ->with('level', 'level.documentType', 'level.documentType.doc_list', 'level.documentType.doc_list.docCheck', 'level.documentType.doc_list.docCheck.status', 'level.documentType.doc_list.status')
        ->get();


return view('doc/browse', compact('allDatas'));

当我要呈现document_type数组时,出现此错误-

  

试图获取非对象的属性'documentType'

@foreach($data->level->documentType as $doc_type)
    {!!$doc_type->name!!}
@endforeach

如何将这些数据渲染到刀片视图中?

1 个答案:

答案 0 :(得分:0)

试一下。

@if(isset($data->level) && isset($data->level->documentType))
    @foreach($data->level->documentType as $doc_type)
        {!!$doc_type->name!!}
    @endforeach
@endif

另外,正如lagbox在第一条评论中所指出的那样,在某些情况下,用户可能没有级别关系。