Laravel传collection查看

Laravel pass collection to view

我正在尝试将 collection 传递给视图,但我没有得到任何东西。

页面呈现空白

$companies = Companies::where('key',$key);
return View('view.name', compact('companies'));

在blade我有

@foreach($companies as #company)

  {{$company->anything}}

@endforeach

结果是

Error: Trying to get property 'anything' of non-object

根据我的发现,这应该可行,请让我知道我做错了什么

感谢您的帮助

您忘记添加 ->get() 以获得 collection。

如果您不使用 ->get()->first(),您的变量仍然是 'QueryBuilder' 格式,而不是 'Collection'。

$companies = Companies::where('key',$key)->get();

return view('view.name', compact('companies'));

提示:您可以在 Laravel 中使用 dd() 来调试变量。

例如:dd($companies);

只是:

$companies = Companies::where('key',$key)->get();
return View('view.name')->with('companies',$companies);

在blade中:

@foreach($companies as $company)

{{$company->anything}}

@endforeach

如果出现任何错误,请使用 dd($company) 来显示 $company 内部有任何数组,以便在 other

中创建更多 foreach