2
我对mongoDB非常陌生,我只是将它用于我正在开发的一个新的rails项目。 我现在想要做的是让一个(嵌入式)文档引用另一个集合,但是具有不同的角色。mongoid,创建角色引用
不知何故,这似乎并不奏效。我知道,我无法从外部集合中定义一个关系到我的嵌入关系。所以在我的情况下,我无法访问我的用户的位置,我很好。不过,我需要定义referenced_in :location
部分,否则在尝试向场所添加新位置时会收到错误消息。
这就是前言。我的实际问题是,这些角色的东西似乎没有工作。当我在地点locations.create(:user_a => some_user)
中创建类似的新位置时,也会为该用户设置user_b
。
有什么办法可以使这个工作?或者我做错了什么?
class Place
include Mongoid::Document
embeds_many :locations
end
class Location
include Mongoid::Document
embedded_in :place, :inverse_of => :locations
references_one :user_a, :class_name => "User" #, :stored_as => :array
references_one :user_b, :class_name => "User" #, :stored_as => :array
end
class User
include Mongoid::Document
referenced_in :location, :inverse_of => :dropper
referenced_in :location, :inverse_of => :picker
end
您使用哪种mongoid版本? – shingara 2011-01-20 10:24:46
sry,完全忘了:mongoid 2.0.0.beta.20 on rails 3.0.3 – Dennis 2011-01-20 10:39:02