ruby-on-rails-3 - Mongoid Embeds_many 不会保存在嵌套形式上

标签 ruby-on-rails-3 mongoid nested-forms mongoid3

我有一个 embeds_many 关联,我正在尝试建立它,我以前已经成功地完成了它,但我正在尝试以一种嵌套形式完成这一切,但我无法弄清楚。

假设我们有一个pocket模型:

class Pocket
    include Mongoid::Document
    field :title, type: String
    embeds_many :coins, cascade_callbacks: true
end

和硬币模型:

class Coin
    include Mongoid::Document
    field :name, type: String
    embedded_in :pocket
end

在我的口袋里,我正在使用:

= f.fields_for @pocket.coins do |coin|
    = coin.text_field :name

我的 Controller 是默认的脚手架 Controller 。 当我使用控制台时,它保存良好,我可以看到我创建的新口袋和硬币。但是,当我尝试从表单创建或更新硬币时,口袋会保存但硬币保持不变。

我在这里错过了什么?

最佳答案

将您的模型 Pocket 更改为

class Pocket
  include Mongoid::Document
  field :title, type: String
  embeds_many :coins, cascade_callbacks: true
  accepts_nested_attributes_for :coins
end

它会很好地工作。

关于ruby-on-rails-3 - Mongoid Embeds_many 不会保存在嵌套形式上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13137532/

相关文章:

ruby-on-rails - ActiveRecord::未知属性错误

ruby-on-rails - 如何将 field_with_errors 类居中

mongodb - 未找到 Mongoid session

ruby - mongoid 更新所有有条件的文档

ruby-on-rails-3 - 在 Rails 中保存三层嵌套表单时出现问题

Asp.Net 嵌套形式

ruby-on-rails - 亚马逊 AWS - 致命 : could not read Username for 'https://github.com' : No such device or address

mysql - Ruby on Rails - 尝试连接到 mysql2 数据库时遇到问题

ruby-on-rails - ruby 魔术编码不起作用

mongoid - MongoDB一直在崩溃