mongoid查询集合,其中两列彼此相等

时间:2013-08-30 11:51:41

标签: ruby-on-rails mongoid

我正在使用Mongoid连接到mongodb并需要查询帮助。

我有一个父模型,其中每个父母和孩子都有一个名字。

Class Parent
  field: :name
  field: :child_name
end

我可以把孩子分成另一个模型和/或嵌入它,但我的数据库需求很简单。我想查询子名称与父名称相同的所有文档。 (例如,父亲是杰夫,儿子也是杰夫)。

尝试以下操作,但不起作用。

  parent = Parent.where(name: :child_name)

不确定如何使用Mongoid。非常感谢任何帮助

1 个答案:

答案 0 :(得分:7)

如果你向Mongoid的where()提供一个字符串,它假设你正在使用JavaScript,并触发MongoDB的本地$where,这就是你需要的:

Parent.where("this.name == this.child_name")