我有10个控制器,每个控制器大约有5个动作,即总计大约40个视图模板。
我有两种完全不同的应用程序样式,一种用于管理区域,另一种用于用户区域。
我们最简单的方法是告知视图应用哪两种样式之一?
管理员区域和用户区域不是简单地由控制器分开,而是基于操作。
答案 0 :(得分:1)
因为,这是一个按行动,快速而肮脏的方式是:
创建一个辅助方法,根据是否需要用户样式表返回一个布尔值:
def use_user_stylesheet?
valid_actions = %w(# array of actions which need user styles)
if valid_actions.include? params[:action]
end
然后,您可以使用它将两个样式表打包在layouts/application.html.erb
文件中。
所以:
<% if use_user_stylesheet? %>
# <%= stylesheet_link_tag 'your_user_stylesheet' %>
<% else %>
# <%= stylesheet_link_tag 'your_admin_stylesheet' %>
<% end %>