2014-12-31 113 views
1

如何在mongodb模型和活動記錄模型之間創建像has_many,has_and_belongs_to_many,belongs_to這樣的關聯。我有一個類Item其使用mongoid和我有另一類ItemTypeActiveRecord在mongodb和活動記錄之間創建關聯

class Item 
    include Mongoid::Document 
    embeds_many :extra_fields, class_name: "ItemType" 
end 

class ItemType < ActiveRecord::Base 
    belongs_to :item 
end 

由於

+1

以下鏈接可能會幫助你 http://stackoverflow.com/questions/4883643/rails-3-polymorphic-association-between-one-mongomapper-model-and-one-many-activ –

回答

1

MongoDB中references_manyreferenced_in等於HAS_MANY和belongs_to的繼承。另外還有一種方法可以在使用embeds_manyembedded_in的mongoDB中實現has_many和belongs_to關係。

如果你想單獨取孩子的記錄,那麼你應該去references_manyreferenced_in。如果孩子總是和父母一起來,那麼你應該去embeds_manyembedded_in

embeds_manyembedded_in子巢的情況下,在蒙戈對象和在references_manyreferenced_in情況下母體有向子和父的不同蒙戈對象參照鍵。