【发布时间】:2011-07-22 17:42:26
【问题描述】:
我目前正在创建一个带有一些嵌套属性的表单。相关部分是有一个Sale 模型(表单的主模型),一个Vehicle 模型(销售 has_one 车辆和车辆属于_to sale)和一个 Registration_number 模型(多对多车辆,通过分配表)。
我正在使用出色的 Flexbox JQuery 插件,它允许选择现有项目或创建新项目。
因为我使用的是 Flexbox,所以有问题的字段大部分是用 html 编码的,绕过了 rails 助手。
当我尝试创建一个新的注册号(使用字段名称sale[vehicle_attributes][registration_numbers_attributes][0][number])时,一切正常,创建了一个新的注册号并将其分配给车辆。但是,当我尝试分配现有的注册号(使用字段名称 sale[vehicle_attributes][registration_numbers_attributes][id])时,出现以下错误:
Couldn't find RegistrationNumber with ID=3 for Vehicle with ID=5
这似乎没有多大意义——在我看来,Rails 应该尝试创建这个关联,而不是找到现有的关联?有什么想法我可能做错了吗?
谢谢!
【问题讨论】:
-
更新:我相信这可能与这里的问题有关:stackoverflow.com/questions/5398862/…,尽管接受的答案表明这是在四月份进行的,并且查看 Github 线程似乎代码现在已经合并到Master。由于我使用的是 Rails 3.1,任何人都可以指出现在是否应该修复这个问题,以及是否应该使用任何不同的语法?
标签: ruby-on-rails ruby-on-rails-3 nested-forms