很简单,查询返回mongomapper没有结果

时间:2013-10-28 09:11:25

标签: ruby-on-rails mongodb mongomapper

我有一个带有mongomapper的rails项目中包含一些数据的数据库。

在rails控制台中:

[1] pry(main)> MyObject.first
=> #<MyObject _id: BSON::ObjectId('525e6a9156c02c22de000002'), my_field: 1, 
...

[2] pry(main)> MyObject.where(my_field: 1).all
=> []
[3] pry(main)> MyObject.where(my_field: 1.to_s).all
=> []
[4] pry(main)> MyObject.where(my_field: "1").all
=> []

我错过了什么?

1 个答案:

答案 0 :(得分:0)

因为abbr

在我的模特中:

key :my_field, String, required: true, abbr: :mf

正确查询:

[5] pry(main)> MyObject.where(mf: "1").all
=> [#<MyObject _id: BSON::ObjectId('525e6a9156c02c22de000002'), my_field: 1, 
...
Imho,这个简单的事情很疯狂

处理super leaky abstraction

这一事实是key names stored in the document in MongodDB