我试图从控制器中将不同的部分渲染到我的索引视图中,具体取决于我收到的参数。 我的控制器中有一个简单的除非条件来检查参数
def index
unless params[:check].nil?
render :partial => /layout/check
else
render :partial => /layout/not_check
end
end
我将文件_check.html.erb和not_check.html.erb放入文件夹布局/
现在,如何在索引视图中显示部分内容? 目前,我可以将部分单独显示为单个视图,但不能在请求的视图中显示。
答案 0 :(得分:4)
更好的方法是从index.html.erb
调用partials<% unless params[:check].nil? %>
<%= render :partial => '/layout/check' %>
<% else %>
<%= render :partial => '/layout/not_check' %>
<% end %>
所以你的def索引看起来像这样
def index
respond_to do |format|
format.html
end
end
我不明白你想要做什么但是与控制器/动作有关的部分不应该在布局中,除非他们正在提供一些布局。
答案 1 :(得分:0)
如果您尝试渲染布局(而非实际视图信息),请尝试使用render layout
def index
if params[:check].nil?
render layout: "not_check"
else
render layout: "check"
end
end