3

我有一个应用程序需要从数据库中为每个视图/请求获取菜单。我该怎么做?我想将数据放入每个视图中。

我看到有View Composers,但我不能这样做View::composer('*', ...)

4

1 回答 1

6

如果您有默认视图,则可以使用该视图上的视图编辑器来传递菜单。它可能看起来像这样:

    View::composer('layout', function($view)
    {
        $view->with($menu,Menu::get());
    });

这将确保无论何时layout调用您的视图,$menu都将包含您的模型返回的任何内容。

此外,LaravelView::share('foo',$bar)可以$foo在所有视图中访问,并将其设置为 $bar。因此,如果您没有单一视图,您可以利用它来确保您始终可以$menu访问。

根据您的情况,一个可能比另一个更好

于 2013-02-25T19:50:25.710 回答