Rails Layout name in view - PullRequest
       13

Rails Layout name in view

4 голосов
/ 12 апреля 2010

Как можно распечатать название текущего макета в виде?

Пример

puts controller.current_layout

Thx

Ответы [ 3 ]

10 голосов
/ 02 июня 2011

Это работает с Rails 3.0.7:

controller.send :_layout

Очевидно, это частный метод, поэтому используйте его на свой страх и риск.

5 голосов
/ 14 апреля 2010

Это работает для меня: response.layout

* +1002 * UPDATE: Правда, response.layout не работает в rails3 +, поэтому я обычно определяю переменную @layout_name внутри каждого макета.

Пример application.html.haml

- @layout_name = 'application'
!!! Strict
%html
...
4 голосов
/ 12 апреля 2010

<%= controller.active_layout %> возвращает имя файла макета. Так что layout 'application' вернется layouts/application.html.erb

В Rails 2.1.0 и выше .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...