Eri*_*ric 3 ruby-on-rails mongodb mongoid
我有一个包含嵌入文档的Mongoid文档.我想搜索其中所有存在具有多个条件的嵌入式文档的顶级文档.
TopDoc.where('inside.first_name' => 'Bob', 'inside.last_name' => 'Jones')
Run Code Online (Sandbox Code Playgroud)
但在我看来,这将与Bob Wever和Paul Jones的TopDoc相匹配,这是错误的.
你需要使用$ elemMatch.使用Mongoid,以下行应该可以解决问题
TopDoc.elem_match(inside: { first_name: 'Bob', last_name: 'Jones' })
Run Code Online (Sandbox Code Playgroud)
这相当于:
TopDoc.where(:inside.elem_match => { first_name: 'Bob', last_name: 'Jones'})
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2361 次 |
| 最近记录: |