我在object1和object2之间有一个嵌套路由。当我尝试编辑对象2时出现错误:
undefined method `object2_path' for #<#Class:0x000000040b2fa8>:0x000000029c8810>.
配置/ routes.rb中
resources :object1 do
resources :object2
end
查看/ Object2的/ _form.html.haml:
= simple_form_for [@object1, @object2] do |f|
如果我更改视图以添加特定网址:
= simple_form_for [@object1, @object2], :url => object1_object2_path, do |f|
然后编辑工作,但新的没有。
如果不是object1_object2_path作为url我设置了object1_object2s_path(索引路径),则会渲染两个视图但是编辑失败,因为表单指向错误的url(显然,这只是我尝试的一部分)。 / p>
答案 0 :(得分:13)
在这种情况下@object1
似乎是nil
:
simple_form_for [@object1, @object2] do |f|
因此rails会尝试使用object2_path
代替object1_object2_path
。尝试检查@object1
。