Mongomapper:“SQL JOIN”查询风格
我有两个模型:
class TrackItem
key :state, Integer, :default => 1
many :track_jobs
end
class TrackJob
key :invoke_at, Time
belongs_to :track_item
end
我想使用 join 进行查询:
item = TrackItem.create(:state => 1)
item.track_jobs.create(:invoke_at => Time.now)
TrackJob.where("track_item.state" => 1).all # => []
返回空数组。问题出在哪里?
MongoDB 日志:
MONGODB track_tweets_development['track_tweets.models.track_jobs'].find({:"track_item.state"=>1})
I have two models:
class TrackItem
key :state, Integer, :default => 1
many :track_jobs
end
class TrackJob
key :invoke_at, Time
belongs_to :track_item
end
I want make query with join:
item = TrackItem.create(:state => 1)
item.track_jobs.create(:invoke_at => Time.now)
TrackJob.where("track_item.state" => 1).all # => []
Return empty array. Where is problem?
MongoDB log:
MONGODB track_tweets_development['track_tweets.models.track_jobs'].find({:"track_item.state"=>1})
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我不熟悉 Ruby,但试试这个:
由于您将跟踪作业添加为嵌入式文档,因此您可以查询(父)文档。它会自动包含您的所有
track_jobs
。I'm not familiar with Ruby, but try this:
Since you're adding track-jobs as a embedded document, you can query the (parent) document. It'll automatically contain all your
track_jobs
.