MongoDBデータ設計の実行についてフィードバックをもらいたいです。私はこれまで実際にそれを使ったことがないので、私のデザインが異常に見える場合は私に知らせてください。
私には、ユーザーとユーザーが実行するアクティビティの概念があります。ユーザーとユーザーが実行するアクティビティの両方のアドレスが必要であり、ユーザーが実行するアクティビティはそのユーザー専用です。アクティビティが重複することはないため、アドレスも重複しないようにする必要があります。
私の最初のデータ構造は次のようになります。
User : {
# User data,
address : {
# address data
},
address : {
# address data,
home : true
},
activity : {
# activity data,
_address_id: #referenced address within user
},
activity : {
# activity data,
_address_id: #referenced address within user
},
}
活動は自宅で行われた可能性があるという仮定があります。
これを行うためのより良い方法はありますか?ユーザーだけでなくアクティビティにもアドレスを埋め込む必要がありますか?これをユーザーモデルから完全に削除する必要がありますか?
これはすべて、Mongoidを使用するRailsアプリケーションにまとめられています。