在做一个考试系统,需要存储选择题和填空题。存储时填空题和选择题需要不同表单。我想使用 link_to 实现, 第一个创建动作是可以的,第二个创建动作该怎么办呢?
def new
@question = Question.new
end
new.html.erb
<% if params[:type] %>
<%= render partial: 'form'%>
<% else %>
<%= render partial: 'form2'%>
<% end %>
建议文件命名可以再加工下,抽象成更语义化的名称,若你就是希望根据类型来控制输出页面,那就设置成类型名称,如选择题的表单为:selections_form.html.erb
填空题的表单为:blanks_form.html.erb
这样在引导页面中就可以按 @w7938940 建议的那样设置统一的传参 path:new_question_path(:form_type => 'selections')
或 new_question_path(:form_type => 'blanks')
在 action 里就能根据 :form_type 来判断输出页面了
<%= render :partial => "#{params[:form_type]}_form" %>