我有一个类似下面的Post模型,我使用的是django-taggit
class Post(models.Model):
user = models.ForeignKey(User)
post = models.TextField()
tags = TaggableManager()
>>>p1 = Post(user='user1', post='Some description', tags="python, java, js")
>>>p1.save()
>>>p2 = Post(user='user2', post='Some description', tags="c, java, js")
>>>p2.save()
>>>p3 = Post(user='user1', post='Some description', tags="c, js, python")
>>>p3.save()
现在我想要获得每个用户的标签和标签计数,如下所示
{
'user1': {'python':2, 'java':1, 'js':2, 'c':1},
'user2': {'c':1,'java':1,'js':1}
}
我试着使用annotate,aggregation,但不能写出确切的查询。
发布于 2018-05-28 18:14:27
Post.objects.filter(tags__name__in=["python"]).count()
https://stackoverflow.com/questions/50562761
复制相似问题