当我定义用户has_many会议时,它会自动创建一个与用户集合关联的“user_id” 键/值对。除了我不能运行任何 mongo_mapper使用此值查找,没有它返回nil或[]。Mongomapper查询收集问题
Meeting.first(:USER_ID => “1234”)
Meeting.all(:USER_ID => “1234”)
Meeting.find(:USER_ID => “1234”)
全部返回零。是否有另一种语法?基本上我不能在自动生成的关联ObjectId上运行查询。
# Methods
class User
include MongoMapper::Document
key :user_name, String, :required => true
key :password, String
many :meetings
end
class Meeting
include MongoMapper::Document
key :name, String, :required => true
key :count, Integer, :default => 1
end
# Sinatra
get '/add' do
user = User.new
user.meetings "foobar") #should read: Meeting.new(:name => "foobar")
user.save
end
get '/find' do
test = Meeting.first(:user_id => "4b4f9d6d348f82370b000001") #this is the _id of the newly create user
p test # WTF! returns []
end