私はMongoとSOのようなペットプロジェクトを作りたいと思っています。投稿タグを実装したいと思います。各タグには名前とスラッグ(URL内のIDとして使用される文字列)があり、投稿には複数のタグがあります。私は、 "タグAを持っている投稿を見つけ、タグBを持っていない投稿を探す"というようなクエリを作成することができたいと思います。これを行うためのmongo-wayが何か不思議です。Mongoで投稿タグを実装する方法は?
1つの方法は、各ポストにタグIDの配列を格納することです。これにより、前記クエリは簡単になりますが、タグ名とスラッグを取得するために、各ポストごとに余分なタグが必要になります。別の方法は、各投稿に[タグ名、タグ・スラッグ]の配列を格納することですが、find
でその情報を使用できるかどうかはわかりません。
mongoの方がうまくいく方法はありますか?私はNoSQLを初めて使っているので、これをどのように達成できるかについてアドバイスをいただきたいと思います。また、私はPHPバインディングを使用していますが、それはおそらく重要ではありません。
タグにスラッグを追加する必要がありますか?または値の配列を持つだけでいいですか? –
私はスラムがちょうどOPのアプローチの実装の詳細に起こったと思います。あなたはそれを必要としません。 – Russell
タグクラウドを作成したい場合など、すべてのタグを返すクエリはありますか?編集:これは動作するように見えます:http://stackoverflow.com/a/4977057/389812 – gdw2