以前の構造は次のとおりです。
City collection with documents like: {_id, name, buildings:[ _ids from Building collection ]}
Building collection with documents like: {_id, name}
そして次のようになりました:
City collection with documents like: {_id, name, buildings:[ {_id, name}, {_id, name}...]}
今、私の問題は次のとおりです。「建物」sufieldの建物jsonの_idはmongodbによって生成されていましたが、それをそれぞれの都市文書の「建物」配列に挿入しました。
しかし今、建物を作成するときは、それを配列に直接挿入します。しかし、私はまだクライアント側で個々の建物ごとにある種の識別を必要としていますが、それを正確に行う方法に困惑しています.
建物を挿入するたびに増加する数値を都市ドキュメントに保持し、そのIDを与えることを考えていました。このようにして、その特定の都市に固有のものになります。したがって、デフォルトの建物が 1 つあるすべての都市には、ID 0 の建物があります。
これに対するよりスマートでエレガントなソリューションはありますか?
PS: 個々の建物にも簡単にアクセスできるようにしたいのですが、キーが ID である連想配列/オブジェクトとしてそれらを保持する必要があると思いますか?