Rails表示发布到/ new而不是/ create?
我有一个使用Rails 3.1.x应用程序的简单表单视图:
prohibited this model from being saved:
Amount:
当在这里点击提交时,它会发布到/mymodels/new
。 如何强制它为mymodels_controller.rb转到正确的创建操作?
选项1:遵循约定并向form_for
帮助程序提供新的未保存记录。 你可能已经在@mymodel
上有这样的对象,设置你的控制器的new
动作。 所以下面的代码段应该可以正常工作:
<%= form_for(@mymodel) do |f| %>
如果它不起作用,你可以在你的动作上设置@mymodel
,如下所示:
class MyModelsController def new @mymodel = MyModel.new end end
选项2:明确您的URL和方法:
<%= form_for(:mymodel, :url => create_mymodel_path, :method => :post) do |f| %>