提交失败后如何在重定向后制作粘性表单?

时间:2016-03-21 17:57:25

标签: ruby-on-rails forms ruby-on-rails-4

我制作的网站类似于TaskRabbit,其中有许多演出类别,每个演出类别都有不同的演出创作形式。我使用case / switch语句来呈现表单。

例如......(代码略有简化以取出子类别ID) 在New Gig模板中:

<% case GigCategory.find(params[:gig_category_id]).name %>
    <% when "Yard Work" %>
         <%= render partial: 'gigs/forms/lawnmowingform' %>
    <% end %>
<% end %>

等...

问题是,当验证失败时,由于模板中的switch语句,我无法在控制器操作中重新呈现表单。我目前已将其设置为在表单验证失败后重定向,但会清除表单以删除用户的输入。

示例:

if @gig.save
  redirect_to @gig, notice: "Gig submitted!"
else
  @gig.errors.full_messages.each do |msg|
    flash[:error] << msg
  end
  redirect_to new_gig_path(gig_params[:gig_sub_category_id])
end

有没有办法让表格“粘”&#34;以便在重定向后保存变量?

谢谢, 扎克

0 个答案:

没有答案