Validation Rails 3中的表单验证错误
我在Rails 3中使用Formtastic构建了一个表单。表单提交给ClientsController的#创建操作,如果保存成功,控制器将重定向到“谢谢”页面。如果保存不成功,它将重定向到嵌入表单的页面。我希望能够在表单页面内联显示验证错误,但在重定向回该页面后,errors对象返回为空 如何才能在表单上显示验证错误 这是来自控制器的代码Validation Rails 3中的表单验证错误,validation,ruby-on-rails-3,formtastic,refinerycms,Validation,Ruby On Rails 3,Formtastic,Refinerycms,我在Rails 3中使用Formtastic构建了一个表单。表单提交给ClientsController的#创建操作,如果保存成功,控制器将重定向到“谢谢”页面。如果保存不成功,它将重定向到嵌入表单的页面。我希望能够在表单页面内联显示验证错误,但在重定向回该页面后,errors对象返回为空 如何才能在表单上显示验证错误 这是来自控制器的代码 if client.save && event.save redirect_to "/thank-you" else redirec
if client.save && event.save
redirect_to "/thank-you"
else
redirect_to :back
end
一些附加细节:我使用的是DefineryCMS,因此表单所在的页面没有视图,因此我无法呈现视图。为什么不:
render :action => 'name-of-the-view-the-form-is-in'
您需要将错误保存到会话中,而不是
重定向到:back
?
if client.save && event.save
session[:client_create_errors] = nil
redirect_to "/thank-you"
else
session[:client_create_errors] = client.errors
redirect_to :back
end
现在,您可以使用
会话[:client\u create\u errors]
从任何用户访问errors对象。对不起,我应该提到我使用的是RefineryCMS,因此页面存储在数据库中。该页没有视图。