当我执行此查询时:
User.where(:comments.size => 10)
我收到以下错误:
undefined method `size' for :comments:Symbol
但是根据这里的文档:
这应该是可能的。那么,为什么会出现错误呢?
注意:“评论”是与用户分开的集合,具有“has_and_belongs_to_many”关系。
我正在使用 mongoid 3.0.0 和 bson_ext 1.6.1
提前致谢!
最佳答案
如果用户嵌入评论,这将起作用,但当您将用户与评论相关时,则不起作用。由于 $size 运算符,它适用于嵌入(尽管这不是一个 super 高效的查询。最好将大小缓存在单独的字段中)。
关于ruby-on-rails-3 - mongoid 查询 - 调用 size 方法会产生错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10410097/