Laravel模板 - 将数据传递给布局

时间:2013-02-12 06:09:25

标签: php laravel

如何将数据传递给布局文件?我只能访问内容页面上传递的数据,但不能访问布局文件。

public function get_index($name){
    return View::make('widget.'.$name)
            ->with("title", ucwords($name).' ‹ Document Management System');
}

5 个答案:

答案 0 :(得分:7)

使用

View::share('data', $data);

在您的before过滤条件或__construct的{​​{1}}。

答案 1 :(得分:3)

您需要一个全局视图变量。我想你需要看一下View::share('title', $title); 我也认为你可以用->shares('title', $title)

链接它

答案 2 :(得分:2)

您还可以在操作中使用$this->layout->with('foo', 'bar')为您的布局提供变量foo

答案 3 :(得分:0)

我最近有一种情况需要动态更改主模板中的@include('layouts._sidebarLeft')语句。 View :: share($ key,$ value)解决了这个问题。然后我将模板更改为@include($ key),每当我需要从默认模板更改它时,我只需在我的控制器中返回视图之前运行另一个View :: share()。我在/start/global.php

中定义了默认侧边栏

答案 4 :(得分:0)

使用View::share() https://laravel.com/docs/7.x/views#sharing-data-with-all-views

7.x的文档说要在ServiceProvider中调用此方法。