编辑嵌套多态资源的路径

时间:2012-09-03 13:58:41

标签: ruby-on-rails rails-routing

我有一个嵌套的多态资源,问题,它可能嵌套在考试之下。在UI中,我使用POST作为提交方法动态构建表单。这适用于新操作,POST到/ exam / 1 / questions。

问题是,对于编辑操作,我收到路由错误(没有路由匹配[POST])。我检查了路由并且可以看到这是一个有效的错误 - PUT的路由连接到更新方法。

我的问题是为什么使用POST作为表单方法的脚手架模型的编辑操作正常工作,而我的表单提交生成上面的路由错误。

以下是来自我的routes.rb的路线:

  resources :exams do
    resources :questions
  end

这是动态生成的表单

<form method="POST" action="/exams/1/questions/9">
    <input name="authenticity_token" type="hidden" value="XXYYZZ=">
    <input name="[question]template" value="Image Answers"><input name="[question]text" value="Which of these is a duck?">
</form>

我知道我可以添加帖子:创建问题的成员来手动映射,但我想知道为什么这不能开箱即用。

1 个答案:

答案 0 :(得分:0)

快速测试应用程序显示标准form_for包含指定了put的方法字段。将此字段添加到动态生成的表单中可以解决问题。