如何在 laravel 中返​​回带有 controller@index 的视图?

    我需要将数据发送Category::all()到视图。但我不能使用控制器的@index()。我想使用这样的东西,但这是一种错误的方式,因为它不会在其他视图中使用。


$categories = Category::all();

return view('view')->with('categories', $categories)

将所有内容返回到 .blade 视图的正确方法是什么?


心有法竹
浏览 139回答 3
3回答

三国纷争

这是错误的方式,因为它不会在其他视图中使用。我理解这个问题,因为您想调用所有视图文件中的所有类别。您可以创建自己的服务提供者(ViewServiceProvider名称很常见),也可以使用现有的AppServiceProvider.在您选择的提供程序中,将您的代码放入引导方法中。public function boot() {    $categories = Category::all();    view()->share('categories ', $categories);}这将使$categories变量在您的所有视图中都可以访问。如果您更愿意使用外观而不是助手,请更改view()->为View::但不要忘记use View;在文件顶部放置。

白猪掌柜的

在您的视图方法中写入不带“.blade”的刀片的目录和名称

慕盖茨4494581

您可以按如下方式检索数据:public function getData() {&nbsp; $categories = Category::all();&nbsp; return view('yourview', compact('categories'));}然后在您的视图中,您可以按如下方式检索数据:@foreach($categories as $cat)&nbsp;<p> {{ $cat->name }} </p>@endforeach
打开App,查看更多内容
随时随地看视频慕课网APP