我在理解带有标准和#find 的内容时遇到了一些麻烦。
我有一些看起来像的代码:
def returns_criteria
MyModel.in(...)
end
我对标准的理解是,当你把事情串起来时,结果会变得更加严格。至少,这似乎是关系集合的工作方式,这可能会误导我。
所以我的期望是,如果我打电话:
returns_criteria.find(some_id)
然后它将在 MyModel.in 调用找到的结果中查找 ID 为 some_id 的对象。但这并没有发生,似乎调用#find 就像在 MyModel 上调用它一样。
我想将此#find 限制为当前指定标准的结果。我能以某种方式做到这一点吗?
最小的 Repro 回购:https ://github.com/nchelluri/mongoid-in-find
运行 in.rb 的输出:https ://gist.github.com/nchelluri/6401850