【问题标题】:MongoDB object / association oddityMongoDB 对象/关联异常
【发布时间】:2011-04-05 08:19:19
【问题描述】:

所以我有以下关联...

Product
  embeds_many :pressings, :class_name => "ProductPressing"
ProductPressing
  embedded_in :product
  embeds_many :variations, :class_name => "ProductVariation"
ProductVariation
  embedded_in :pressing, :class_name => "ProductPressing"

在意识到引用关联会更好地满足我的需求后,关联变成了……

Product
  references_many :pressings, :class_name => "ProductPressing"
ProductPressing
  referenced_in :product
  references_many :variations, :class_name => "ProductVariation"
ProductVariation
  referenced_in :pressing, :class_name => "ProductPressing"

产品和冲压件正确关联在一起,但冲压件和变体没有,即使正在创建变体。奇怪之处可以在以下命令中看到...

>> v = ProductVariation.first
=> #<ProductVariation _id: 4d9acc89e1607c48fd00001c, _id: BSON::ObjectId('4d9acc89e1607c48fd00001c'), _type: nil, pressing_id: BSON::ObjectId('4d9acc89e1607c48fd00001b')>
>> v.pressing.product.pressings.first.variations
=> []

您可以看到,我从现有的压制开始...逐步升级到产品,然后返回查看所有变体...但计数为 0。这怎么可能?

【问题讨论】:

标签: ruby-on-rails mongodb factory factory-bot


【解决方案1】:

所以我发现删除 :class_name 解决了问题(我认为。仍在进行测试)

referenced_in :pressing, :class_name => "ProductPressing"

到:

referenced_in :product_pressing

我在embedded_in 中使用class_name 就好了。不能和referenced_in一起使用吗?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-01-21
    • 2016-09-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多