ruby-on-rails - rails 错误?除非 parent 修改(嵌套形式),否则孙子不保存

标签 ruby-on-rails ruby activerecord nested-forms

基本上,我有 4 层嵌套表单。 A有B有C有D,D是多态的(A也有D)。我在一个表单上编辑所有这些,使用 javascript 添加/删除 B、C 和 D 对象。

问题是每当我编辑 D 而没有编辑 A、B 或 C 的任何属性时,更改不会保存。这包括添加 D 或编辑现有 D 的属性。

如果我更改任何父模型(A、B 或 C)中的属性,则更改会保存。

我遇到了与 Marking multi-level nested forms as "dirty" in Rails 相同的问题

在那个问题中确定它是 Rails 2.3.5 中的错误。我正在运行 2.3.11。该错误是否有可能被重新引入?有谁知道怎么查吗?

非常感谢...谢谢!

最佳答案

Steven,我相信这是 Rails 中的一个真正的错误。我曾经提交过一份关于此的错误报告,但它从未获得关注。我认为这个问题很重要,我还没有时间深入研究 Rails 代码并找到正确的解决方法。

我的解决方法只是确保沿着这条线的某个地方“弄脏”了父记录。我相信只需确保在父记录上设置一个值就可以解决问题,即使该值与数据库中的值没有区别。

当我处理这个问题时,我创建了一个 jQuery 动态父/子/孙表单方法。如果它可能对您有用,您可以在这里找到它:http://amillionbetterthings.com/2010/06/24/rails-nested-forms-with-ajax-add-and-remove/ .

关于ruby-on-rails - rails 错误?除非 parent 修改(嵌套形式),否则孙子不保存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6300810/

相关文章:

ruby-on-rails - 我的 SOAP 服务的集成/请求 rspec 测试

ruby-on-rails - 设计 - 如何显示用户的帖子

ruby-on-rails - 尽管手动请求工作正常,但无法使用 yt gem 读取标题

python - 使用 html 模板格式化 csv 文件数据

ruby-on-rails - ActiveRecord::AssociationTypeMismatch 错误通过 Rails 3 的另一个模型将模型连接到自身

mysql - Rails - 终止正在运行的查询的正确方法

mysql - 未初始化常量 Mysql::error

css - Bootstrap col-sm-offset-2 未对齐表单中的按钮

ruby-on-rails - 从数据库中删除头像

ruby-on-rails - 有没有办法混合命名范围和思考狮身人面像范围的 rails ?