如何在视图中不导入Rails中的默认应用程序布局?

时间:2012-02-03 03:55:18

标签: ruby-on-rails layout view

除了具有特定结构的视图外,我希望从不同路径的所有视图都使用'layouts / application.html.erb'。是否可以在不强制为此视图创建布局的情况下为其他视图创建布局?

在我的情况下,'index.html.erb'无法使用布局'application.html.erb'。

enter image description here

2 个答案:

答案 0 :(得分:3)

您可以通过在render调用中传递显式布局名称来覆盖默认布局。

class FoosController < ApplicationController
  def index
    # call below uses layouts\new_layout.html.erb as the layout
    render :layout => 'new_layout'
    # if you want to render without a layout
    # render :layout => false
  end
end

答案 1 :(得分:0)

这很容易。如果要为整个控制器使用不同的布局,只需将以下内容放在该控制器的顶部:

class ItemsController < ApplicationController
  layout "inventory"
  #...
end