我有一个应用程序需要从数据库中为每个视图/请求获取菜单。我该怎么做?我想将数据放入每个视图中。
我看到有View Composers
,但我不能这样做View::composer('*', ...)
。
我有一个应用程序需要从数据库中为每个视图/请求获取菜单。我该怎么做?我想将数据放入每个视图中。
我看到有View Composers
,但我不能这样做View::composer('*', ...)
。
如果您有默认视图,则可以使用该视图上的视图编辑器来传递菜单。它可能看起来像这样:
View::composer('layout', function($view)
{
$view->with($menu,Menu::get());
});
这将确保无论何时layout
调用您的视图,$menu
都将包含您的模型返回的任何内容。
此外,LaravelView::share('foo',$bar)
可以$foo
在所有视图中访问,并将其设置为 $bar。因此,如果您没有单一视图,您可以利用它来确保您始终可以$menu
访问。
根据您的情况,一个可能比另一个更好