Django MongoDB エンジンを使用して ManyToManyField を実装すると、以下のように設計できます。
# Model and its field
class Group(models.Model):
members = ListField(models.ForeignKey(User))
# Query
Group.objects.raw_query({'members': ObjectId(request.user.id)})
上記のものは、フィールド「メンバー」をmongodb IDリストとしてmongodbに保存します。お気に入り"members" : [ ObjectId("4e46434741b6994c70000000") ]
MongoDB ID を文字列として保存することもできます。
# Model and its field
class Group(models.Model):
members = ListField(models.CharField(max_length=24))
# Query
Group.objects.filter(members=request.user.id)
上記のものは、フィールド「メンバー」を文字列リストとしてmongodbに保存します。お気に入り
"members" : [ "4e46434741b6994c70000000" ]
私の質問は、これらの構造のどれがmongodbクエリにとってより効率的ですか?