closures一个行动的布局

我的情况:ReportsController的查看动作应该呈现纯html,而不是作为一个文件(在浏览器中查看并保存)。 所以为了渲染我使用视图模板view.html.erb和我neetclosures此操作的任何布局。 但在这个控制器的其他行动布局应保持不变。 只能closures整个控制器,如下所示:

ReportsController < ApplicationController layout false 

但是这样做是错误的:(对于所有的行动,我试图使用这样的事情在行动:

 def view @report = Report.new(params[:report]) unless @report.valid? render :action => 'new' and return else render :layout => false end end 

我该怎么办?

尝试这个:

 ReportsController < ApplicationController layout false layout 'application', :except => :view 

这应该做到这一点,

 def view ... render :layout => false end 

链接到文档

在响应块中,添加layout: false

例如:

 respond_to do |format| format.html { render :layout => false } # your-action.html.erb end