简单的问题,做得更好
# application.html.haml
(...)
%body
= render :partial => 'layouts/edit_user_sidebar' if params[:controller] in ['Users', 'some_other_controller']
= render :partial => 'layouts/default_sidebar' unless params[:controller] == 'Home'
- if params[:controller] == 'Home'
#content.24-cols
.padding
= yield
- else
#content.18-cols
.padding
= yield
或者将渲染放在视图中。我认为它会更优雅但是我需要花很多时间来编辑它。
答案 0 :(得分:1)
我认为最好将它放在应用程序页面中。
然后有一个控制访问规则的中心位置。
与脂肪模型,瘦控制器类似,我尽量保持视图最简洁。我将测试重点放在模型,属性和模型方法上。
我也怀疑你可以使用:
= render 'layouts/edit_sidebar' if (params[:controller] in ['Users', 'other_controller'])
= render 'layouts/default_sidebar' unless params[:controller] == 'Home'
有点干涩。