我在当前的Mongoid版本2.0.2之前,我能够做到
User.criteria.id(1234)#=>用户#1234
但现在它抛出了无方法错误。是否已将其更改为其他内容或已将其删除?
感谢您的输入
答案 0 :(得分:2)
您可以随时执行此操作:
User.where(:conditions => {:id => '1234'})
或者,如果您实际上并不需要标准对象(并且只是想要ID为'1234'的用户),您可以这样做:
User.find('1234')
答案 1 :(得分:1)
发现它,他们(mongoid团队)确实从最新版本的mongoid中删除了标准#id选择器。我之所以不使用Model.find,是因为它没有进行延迟加载,标准#id就是这样做的。但回到这里的问题。他们用条件#for_ids
替换标准#id因此Model.criteria.for_ids('1234')将起作用