我在mongoid 3.1.0和lastest 3.1.3的rails中尝试了类似的操作。.limit不起作用。在下面它应该返回1行,但它返回了所有(4)
密码:
@go = Gallery.limit(1)
logger.info "count: #{@go.count}"
输出:
count: 4
MOPED: 54.234.11.193:10055 QUERY database=mongohqtestdatabase collection=galleries selector= {"$query"=>{}, "$orderby"=>{:_id=>1}} flags=[:slave_ok] limit=-1 skip=0 batch_size=nil fields=nil (276.2010
毫秒)
mongoid哪个版本适合limit()?
4条答案
按热度按时间gz5pxeao1#
正如官方的Mongoid answer所建议的,我们应该使用
Gallery.limit(1).count(true)
bakd9h0s2#
对于Mongoid 5,参数
CollectionView#count
发生变更:所以你可以这样做
xmq68pz93#
选择文档ID。创建一个数组,创建一个只搜索这些文档ID的查询,并一起更新它们。
nx7onnlm4#
limit
命令可以正常工作,但是由于某种原因count
忽略了这个限制。如果你将它转换成一个数组,你会看到这个限制是有效的。此外,如果您实际迭代对象,您将看到限制正在起作用。