使用“或”使用mongomapper时的声明
我正在尝试使用“or”语句查询 MongoMapper。我找到了如何直接使用 mongo 执行此操作的示例:
db.foo.find( { $or : [ { a : 1 } , { b : 2 } ] } )
所以我认为 MongoMapper 查询应该如下所示:
Foo.all(:or => [ {:a => 1}, {:b => 2} ])
但事实并非如此。
有人可以帮忙吗?
I am trying to query MongoMapper with "or" statement. I've found an example of how to do it with mongo directly:
db.foo.find( { $or : [ { a : 1 } , { b : 2 } ] } )
so I thought the MongoMapper query should be looks like this:
Foo.all(:or => [ {:a => 1}, {:b => 2} ])
but it doesn't.
Can anyone help?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您需要这样:
或者对于 MongoMapper 来说这样:
MongoMapper 查询几乎是您在 MongoDB shell 中使用的查询的直接音译。
You'd want this:
or this for MongoMapper:
MongoMapper queries are pretty much a straight transliteration of the queries you'd use in the MongoDB shell.
使用: Foo.where(:'$or' => [ {:a=>1}, {:b=>1} ])
Use: Foo.where(:'$or' => [ {:a=>1}, {:b=>1} ])