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