【问题标题】:Rails 3.2 nested route on simple formRails 3.2 简单形式的嵌套路由
【发布时间】:2012-05-29 02:22:42
【问题描述】:

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

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

config/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_object2s_path(索引路径)而不是 object1_object2_path 作为 url,则两个视图都被渲染但编辑失败,因为表单指向错误的 url(很明显,这只是我尝试的一部分)。

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-3 simple-form nested-routes


    【解决方案1】:

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

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

    因此,rails 尝试使用object2_path 而不是object1_object2_path。尝试检查@object1的值。

    【讨论】:

    • 你完全正确。对于编辑操作,我没有设置@object1。顺便说一句,我不知道这种导轨行为。谢谢米哈伊尔。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-12-13
    • 1970-01-01
    • 2016-07-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多