彼/彼女がフォローしている他のユーザー ID の配列を持つUser
エンティティがあります。
var userSchema = {
following: { type: Array }
};
私は RESTful API を持っています。私が をリクエストするときUser
、私のアプリケーションはそれが何人のフォロワーをUser
持っているかを知る必要があります。
私が見る2つのオプションは次のとおりです。
User
が要求されたら、次のようなカウント クエリを実行します。{ following: { $in: [userId] } }
- a
User
がPOST
編集されたら、ユーザー ID が配列に追加または削除されたかどうかを確認し、追加または削除されたfollowing
場合は、MongoDB を使用して、フォロー/フォロー解除されたドキュメントのプロパティ$inc
をインクリメントまたはデクリメントします。followersCount
User
他に選択肢はありますか?そうでない場合、最良の選択肢は何ですか?ドキュメント自体にプロパティを配置するのは少し奇妙に感じfollowersCount
ます。これは、実際には動的なカウントであるにもかかわらず、アプリケーションによって更新できることを示唆しているためです。
article
に関連付けられているの数を返すために RESTful API が必要な同様の状況がありますwebsite
。要求に応じてその Web サイトの記事をカウントしますか? それともカウント プロパティを保存し、その Web サイトに関連付けられた新しい記事が作成されるたびにそれを更新しますか?