Вы не можете. Я пытался добавить функциональность тем в приложение блога, и оказалось, что он не увидит вспомогательные методы приложения или переменные экземпляра.
Вместо этого я создал представление css для действия show в темах, что-то вроде show.css.erb , доступ к которому осуществляется через URL, например / themes / black.css
То же самое можно сделать с помощью javascript, поэтому, если вам нужно конкретное представление javascript, просто создайте представление для posts.js.erb
Эта техника даже не нова в рельсах. Я помню, как кто-то спрашивал в твиттере, можно ли сделать что-то подобное в asp.net mvc еще в 09
Кроме того, вам необходимо, чтобы ваш контроллер отвечал на этот формат, ниже приведен фрагмент приложения, над которым я работал.
def show
@theme = Theme.find(params[:id])
respond_to do |format|
format.html
format.css
end
end