Rails渲染模板

时间:2017-06-22 11:00:47

标签: ruby-on-rails model-view-controller view

是否可以根据整个应用中的条件呈现不同的模板?

我不想写每个视图,如

if domain =='cool'
  render template 'cool/index'
else
  regular template
end

我想我需要在application controller中为它做点什么

1 个答案:

答案 0 :(得分:2)

你可以像这样在ApplicationController中实现这一点。通过将符号传递给布局方法,它允许您动态地将布局分配给应用程序中的所有控制器。

class ApplicationController
  layout :special_layout

  private
    def special_layout
      (domain =='cool') ? "cool" : "not_cool"
    end

end