多くの Bar を埋め込んだ Foo というモンゴイド モデルがあるとします。
class Foo
...
embeds_many :bar
...
end
class Bar
...
embedded_in :foo
...
end
バーが自分自身にリンクする関係を作成したいと思います。この関係は常に、同じ Foo ドキュメントに埋め込まれている 2 つのドキュメントに関係します。関係を呼び出すときに nil を返さずにこれを行うことはできないようです。私が試してみました
belongs_to :discovered_by, :class_name => 'Bar'
そしてまた
has_one :discovered_by, :class_name => 'Bar'
Discovery_by id が Bar ドキュメントに設定され、他の Bar ドキュメントを指している間、次のことをしようとすると nil になります (最初の Foo の最初の Bar にdiscovered_by_id が設定されていると仮定します)。
Foo.first.bars.first.discovered_by
ドキュメントにIDが設定されているにもかかわらず、これは常にnilを返します。なぜこれが起こっているのかについて何か考えはありますか?助けてくれてありがとう。