3

我在 object1 和 object2 之间有一个嵌套路由。当我尝试编辑 object2 时出现错误:

undefined method `object2_path' for #<#Class:0x000000040b2fa8>:0x000000029c8810>.

配置/路由.rb

resources :object1 do
  resources :object2
end

查看/object2/_form.html.haml:

= simple_form_for [@object1, @object2] do |f|

如果我更改视图以添加特定的 url,例如:

= simple_form_for [@object1, @object2], :url => object1_object2_path, do |f|

然后编辑工作但新的没有。

如果我设置 object1_object2s_path (索引路径)而不是 object1_object2_path 作为 url,则两个视图都被渲染,但编辑失败,因为表单指向错误的 url(很明显,这只是我尝试的一部分)。

4

1 回答 1

13

在这种情况下似乎@object1是:nil

simple_form_for [@object1, @object2] do |f|

所以 rails 尝试object2_path使用object1_object2_path. 尝试检查 的值@object1

于 2012-05-29T05:49:19.747 回答