我更新ruby on rails并且我正在尝试修复我从前一名员工继承的应用程序。
基本上,用户点击来自这样的电子邮件的链接。 https://www.example.com/events/event_name/event_registrants/new?partner=microsoft
他们将部分表格留空,然后点击提交按钮。由于空白字段,event_registration模型失败,然后将它们重定向回https://www.example.com/events/event_name/event_registrants/new
在此过程中丢失?partner = microsoft url参数。
我发现控制器的区域将它们重定向回具有验证错误的站点。当前代码执行此操作:
render :new
我添加了if / else语句,如果没有合作伙伴,它会显示正确的页面...但是当有合作伙伴时我会收到错误。
if @event_registration.partner.nil?
render :new
else
redirect_to :action => "new", :partner => @event_registration.partner.try(:token)
end
这样可行,但我试图将@event_registration模型传递给重定向,以便显示模型验证错误消息。
有人可以帮忙吗?
由于 jlimited。
答案 0 :(得分:0)
在重定向之前抓取参数,并使用重定向传递它们。
在这种情况下:
params = [:partner => 'microsoft']
redirect_to new_event_registration_path(params)