php - 是否可以在 Laravel (4) Blade 模板中获取 View /布局名称

标签 php templates laravel laravel-blade

我有一个布局,我想根据正在显示的 View 向主体添加类,即:

<body class="layout-default page-index">

我可以在 Twig 中很容易地做到这一点(OctoberCMS 使用 Twig),但是我看不到使用 Laravel 的 Blade 模板(无论如何我更喜欢)来做到这一点的方法。

我宁愿不必将变量传递给每个具有 View 名称的 View::make,因为这似乎是多余的。

最佳答案

问得好,使用 CSS 的非常聪明的方法。 您通常会通过向 body 标记或主容器 div 添加类来使用它。

在你的路由或过滤器文件中:

View::composer('*', function($view){

    View::share('view_name', $view->getName());

});

在你的视野中:

<?php echo str_replace('.','-',$view_name);?>

<?php echo str_replace('.','-',Route::currentRouteName());?>

这些应该可以为您提供所需的一切。

关于php - 是否可以在 Laravel (4) Blade 模板中获取 View /布局名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27079010/

相关文章:

javascript - PHP AJAX JQuery xmlhttp 请求 Get 方法发送始终为 1

php - PHP 中使用 unpack() 转换为字节数组

php - PHP可以将html命令写入另一个文件吗?

c++ - 模板-无法将函数定义与现有声明c++匹配

C++ 模板 - 链表

c++ - 关于自定义分配器和 STL 的模板声明、别名和特化说明

php - SQL 连接被 Laravel 拒绝

php - 如何根据id获取页码

laravel - 同步运行 Laravel 作业链

css - 转到子链接时 Laravel CSS 不起作用