Rails布局名称在视图内
如何在视图中打印出当前布局的名称?
例
puts controller.current_layout
谢谢
这适用于Rails 3.0.7:
controller.send :_layout
显然,这是一种私有方法,因此使用风险自负。
这对我有用:response.layout
UPDATE:是的,response.layout在rails3 +中不起作用,因此我通常在每个布局中定义一个@layout_name变量。
application.html.haml的示例
- @layout_name = 'application' !!! Strict %html ...
<%= controller.active_layout %>
获取布局文件名。 因此layout 'application'
将返回layouts/application.html.erb
在Rails 2.1.0和更高版本中 。