我如何从控制器 return 数据到 Laravel 中的@include?
how do I return data from controller to @include in Laravel?
我有一个名为 side.balde.php 的视图,它类似于边栏。
使用@include.
将这一端调用到主视图和各种其他视图中
如果我只是 return 在我的控制器中查看 side.balde.php 和 variables/data,那么主视图无法识别变量。
return view('incs/side',compact('users','etc'));
我可以return 主视图中的这个数据,主视图中的所有@includes 都可以继承这个数据。但问题是我在其他几个页面中使用了这个@include。
如何将数据转发到 side.balde.php,以便所有调用 side.balde.php 的视图都可以访问数据。
有 2 个选项可以跨多个视图共享数据:
应用服务提供商(短)
打开您的应用服务提供商并在 boot
方法中写入:
$用户=User::get();
View::share('users', $用户);
现在您的所有视图都可以访问该密钥 users
.
View Composers 请访问此 link 以了解视图编辑器的工作原理。
虽然您可以使用第一个选项来完成您的工作。谢谢
与
一起使用
public function boot()
{
View::composer('*', function ($view) {
//code
$view->with('users', $users);
});
}
并在顶部使用了 use App\User;
和 use Illuminate\Support\Facades\View;
我有一个名为 side.balde.php 的视图,它类似于边栏。 使用@include.
将这一端调用到主视图和各种其他视图中如果我只是 return 在我的控制器中查看 side.balde.php 和 variables/data,那么主视图无法识别变量。
return view('incs/side',compact('users','etc'));
我可以return 主视图中的这个数据,主视图中的所有@includes 都可以继承这个数据。但问题是我在其他几个页面中使用了这个@include。
如何将数据转发到 side.balde.php,以便所有调用 side.balde.php 的视图都可以访问数据。
有 2 个选项可以跨多个视图共享数据:
应用服务提供商(短) 打开您的应用服务提供商并在
boot
方法中写入:$用户=User::get(); View::share('users', $用户); 现在您的所有视图都可以访问该密钥
users
.View Composers 请访问此 link 以了解视图编辑器的工作原理。
虽然您可以使用第一个选项来完成您的工作。谢谢
与
一起使用public function boot()
{
View::composer('*', function ($view) {
//code
$view->with('users', $users);
});
}
并在顶部使用了 use App\User;
和 use Illuminate\Support\Facades\View;