NodeJSおよびMongoDBサポートでハッシュタグ機能を実装したいので、用途を数えることもできます。ユーザーがページにハッシュタグを追加するたびに、データベース内でハッシュタグをプッシュまたは更新する必要があります。各hastagは次のようになります。MongoDBに複数のドキュメントを挿入または更新する
{_id:<auto>, name:'hashtag_name', uses: 0}
私が直面してる問題は、ユーザーが同様に新しいタグを追加できるということですので、彼は、「完了」をクリックするとき、私は既存の「用途」欄をインクリメントする必要がありますタグを追加し、新しいタグを追加します。トリックは、1つのMongo命令でこれを行う方法です。これまでのところ、私はこれを達成するための2つの可能な方法を考えたが、私はどちらかと特に満足していない:
オプション1
私は、ユーザーが開始する前に、DBから既存のタグをフェッチサービスを持っています新しい記事を書く。これに基づき、私は新しいであるタグを検出し、2つのクエリを実行することができます:新しいタグを追加するものを、そして既存の1つの
オプション2
を更新している別の私は、リストをお送りします私は、すべてのタグに対してfind()を実行します。私が見つけたら、私は更新し、そうでなければ、私はそれを作成します。
オプション(今のところ解決策なしで)3
最良のオプションは、タグ名の配列を受け取り、クエリを実行し、既存の$ INC操作を行うと、不足しているものを追加することです。
質問
は、よりよい解決策はありますか?オプション3から最終結果を達成することはできますか?
3.xでは、MongoDBのあなたの現在のバージョンは何ですか? – msoliman
はい、3.x.申し訳ありませんが、申し訳ありません –