首页 > 解决方案 > 如何将数据从控制器返回到 Laravel 中的 @include?

问题描述

我有一个名为 side.balde.php 的视图,它就像一个侧边栏。使用 @include 将这一面调用到 home 和各种其他视图。

如果我只是在控制器中返回带有变量/数据的 view side.balde.php,那么主视图将无法识别这些变量。

 return view('incs/side',compact('users','etc'));

我可以使用主页视图返回此数据,并且主页视图中的所有 @include 都可以继承此数据。但问题是我在其他几个页面中使用了这个@include。

如何将数据转发到 side.balde.php,以便所有调用 side.balde.php 的视图都可以访问数据。

标签: phplaravelinclude

解决方案


有 2 个选项可以跨多个视图共享数据:

  1. 应用服务提供者(短)打开你的应用服务提供者并在boot方法中写:

    $users = 用户::get(); 查看::share('users', $users); 现在您的所有视图都可以访问该键users

  2. View Composers请访问此链接以了解 View Composers 的工作原理。

不过,您可以使用第一个选项完成工作。谢谢。


推荐阅读