У нас есть модель Entry со встроенным элементом:
class Entry
include Mongoid::Document
include Mongoid::Timestamps
include Mongoid::Spacial::Document
embeds_many :items, cascade_callbacks: true
...
class Item
include Mongoid::Document
include Mongoid::Timestamps
include Mongoid::Spacial::Document
embedded_in :entry
...
Если я запрашиваю mongo непосредственно для записи по элементу id:
{"items._id" : ObjectId("50536b18baa072000f000360")}
Он возвращает запись:
505363b36181ce00020006b1 { "Created_at": "2012-09-14T17: 04: 51Z", "элементы": [{ "_ идентификатор": "50536b1a2b17b3...
Тем не менее, когда я запрашиваю через Mongoid:
irb(main):002:0> Entry.where('items._id' => '50536b18baa072000f000360')[0]
=> nil
Все остальные запросы работают (для других полей для элементов и для полей при вводе). Но не для id.
Мы запускаем мангоид (2.4.12).