如何使用Ruby on Rails和Mongoid实现多条件查询嵌套文档?
- 内容介绍
- 文章标签
- 相关推荐
本文共计184个文字,预计阅读时间需要1分钟。
我有包含嵌套文档的Mongoid文档。我想搜索其中所有具有特定条件的嵌套文档的顶层文档。使用`TopDoc.where('inside.first_name'='Bob', 'inside.last_name'='Jones')`,但看起来这与Bob Wever和P不符。
我有一个包含嵌入文档的Mongoid文档.我想搜索其中所有存在具有多个条件的嵌入式文档的顶级文档.TopDoc.where('inside.first_name' => 'Bob', 'inside.last_name' => 'Jones')
但在我看来,这将与Bob Wever和Paul Jones的TopDoc相匹配,这是错误的.
TopDoc.elem_match(inside: { first_name: 'Bob', last_name: 'Jones' })
这相当于:
TopDoc.where(:inside.elem_match => { first_name: 'Bob', last_name: 'Jones'})
本文共计184个文字,预计阅读时间需要1分钟。
我有包含嵌套文档的Mongoid文档。我想搜索其中所有具有特定条件的嵌套文档的顶层文档。使用`TopDoc.where('inside.first_name'='Bob', 'inside.last_name'='Jones')`,但看起来这与Bob Wever和P不符。
我有一个包含嵌入文档的Mongoid文档.我想搜索其中所有存在具有多个条件的嵌入式文档的顶级文档.TopDoc.where('inside.first_name' => 'Bob', 'inside.last_name' => 'Jones')
但在我看来,这将与Bob Wever和Paul Jones的TopDoc相匹配,这是错误的.
TopDoc.elem_match(inside: { first_name: 'Bob', last_name: 'Jones' })
这相当于:
TopDoc.where(:inside.elem_match => { first_name: 'Bob', last_name: 'Jones'})

