私は次のような状況があります。私は、Post、User、Friendsという3つのモデルを持っています。これは正常に動作しますdjangoにはネストされたオブジェクトに注釈を付ける方法はありますか?
User.objects.filter(name__startswith='Joe').annotate(fc=Count('my_friends1'))
:
class User(models.Model):
name = models.CharField(max_length=100)
class Friend(models.Model):
user1 = models.ForeignKey(User,related_name='my_friends1')
user2 = models.ForeignKey(User,related_name='my_friends2')
class Post(models.Model):
subject = models.CharField(max_length=100)
user = models.ForeignKey(User)
私は、ユーザーを持参するたびに、私は彼の友人の数を持って帰りたいと思います。
しかし、Postのネストされたオブジェクトとしてユーザーを連れてきたときに、この機能を有効にしたいと思います。私は最小限に抑えDB呼び出しにselect_relatedが使用していますので、私のような何かをしたい:しかし
Post.objects.filter(subject='sport').select_related('user').annotate(user__fc=Count('user__my_friends1'))
を、これは、フィールドFC post.user
下のポストの下のフィールドuser__fcを作成し、ではありません。 この機能を実現する方法はありますか?