2013-03-24 2 views
0

В rails3, я хочу иметь все представления в определенном контроллере (groups_controller), чтобы иметь другой цвет фона фона. У меня есть таблица styles.css с этим правилом:rails3: как изменить цвет <body> для просмотра только одного контроллера?

body { background-color:#333} 

и я включаю этот файл в application.css. но проблема в том, что теперь каждый контроллер получает стили, определенные в group.css. Есть ли другой способ сделать это? Спасибо!

ответ

1

Отметьте this section руководства по конвейеру Rails для одного из способов достижения этого.

Вы хотите переместить это правило стиля в таблицу стилей для этого контроллера (groups.css.scss), а затем убедитесь, что каждая страница загружает таблицу стилей, связанную с ее контроллером. Вы можете сделать это, добавив следующую строку в шаблоне вида (вероятно application.html.erb):

<%= stylesheet_link_tag params[:controller] %> 

Вы, вероятно, также необходимо, то убедитесь, что ваш CSS манифест не включает groups.css.scss - если остальные ваши правила стиля находятся в application.css, вы можете просто удалить директиву *= require_tree ..

Есть и другие способы сделать то же самое, поэтому, если вас не устраивает такой подход, вы сможете найти другие альтернативы.

+0

спасибо! Это сработало отлично. – user1404536

Смежные вопросы