Вот здесь есть пример динамической смены layout (в разделе types of layouts)
http://api.rubyonrails.org/classes/ActionController/Layout/ClassMethods.html#M000131
В кач-ве задачки на изучение руби - как это работает?
Подписаться на:
Комментарии к сообщению (Atom)
2 комментария:
Пока не могу ответить:)
Да что тут хитрого - магия обычная, как она есть.
layout - это метод. Если ему дать символ - он поищет одноименный метод у контроллера и выполнит. Если дать строку скушает сразу.
proc принимает блок и возвращает символ - ссылку на этот блок как на метод.
Пока я не очень понимаю только идеи как работают вызовы методов внутри описания класса (все эти attr_reader и layout), но верю им на слово.
Отправить комментарий