У меня есть вопрос относительно хранения mongoid id для reference_many.
Предположим, у меня есть следующие классы:
class A
include Mongoid::Document
field :name
attr_accessible :name, :b_ids
references_many :bs, :stored_as :array, :inverse_of :a
end
class B
include Mongoid::Document
field :name
attr_accessible :name, :a_id
referenced_in :a
end
Если я сделаю следующее:
a = A.create(:name => "a1")
b = B.create(:name => "b1")
b.a = a
Стоит ли ожидать, что массив a.b_ids будет массивом, содержащим идентификатор b?
Поведение, которое я наблюдаю, состоит в том, что b.a_id содержит идентификатор a, но a.b_ids не содержит идентификатор b.
Предполагается, что массив id на стороне A должен обновляться вручную?
Кстати, если я сделаю a.bs << b, то a.b_ids будет обновлен правильно. </p>