在Laravel 4中我有一个主刀片布局,我想添加一个类到html元素,如'tpl-home',但我需要知道哪个是当前视图名称与view::make.
<!doctype html>
<html lang="es" class="tpl-{{Str::slug($currentViewName)}}">
Laravel提供任何功能来检索这个吗?
谢谢
在你的过滤器文件中:
View::composer('*', function($view){
View::share('view_name', $view->getName());
});
然后在主刀片布局中,你可以使用$view_name.
View composer是一种在视图中保存/共享变量的好方法,但在routes文件中设置的视图名在每个视图中更像是一个固定值,而不是一个变量,这就是为什么,在这种情况下,
我宁愿在Blade中使用Request::path() == 'viewName'
:
<ul class="nav navbar-nav">
<li{{ Request::path() == 'admin' ? ' class="active"' : '' }}>
<a href="{{ URL::to('/admin') }}">Admin</a>
</li>
<li{{ Request::path() == 'bookings' ? ' class="active"' : '' }}>
<a href="{{ URL::to('/bookings') }}">Bookings</a>
</li>
...