私は次のモデルを持っています:
class Like(EmbeddedDocument):
user = ReferenceField(User,dbref=False)
date = DateTimeField(default=datetime.utcnow,required=True)
meta = {'allow_inheritance': False}
class Post(Document):
name = StringField(max_length=120, required=True)
likes = ListField(EmbeddedDocumentField(Like))
いいねが20を超える投稿(ListFieldのサイズが20を超える)のみをフィルタリングしたいと思います。私は以下を使用してクエリを実行しようとしました:
posts = Post.objects.filter(likes__size_gte=20)
posts = Post.objects.filter(likes_gte=20)
posts = Post.objects.filter(likes__gte=20)
posts = Post.objects.filter(likes__size_gte=20)
それらのどれも動作しません。
しかし、完全一致(ListFieldサイズが正確に20いいね)を使用すると、次のように機能します。
posts = Post.objects.filter(likes__size=20)
コメント?