我有一个模型,Tic,与我的应用程序中的其他模型具有通用的外键关系。
class Tic(models.Model):
user = models.ForeignKey(User)
content_type = models.ForeignKey(ContentType)
object_id = models.PositiveIntegerField()
content_object = generic.GenericForeignKey('content_type', 'object_id')
added = models.DateTimeField(auto_now_add=True)
class Meta:
unique_together = ('user', 'content_type', 'object_id')
我想查询此模型并完成以下操作:
到目前为止,我有以下查询来获取正确的Tics,但我只能让它作为值列表正常工作。
d = date.today() - timedelta(days=14)
t = Tic.objects.filter(added__gt = d).values('content_type','object_id').annotate(num_tic = Count('id')).order_by('-num_tic')
知道如何获得类似的查询来返回对象吗?
修改
为了跟进,我能够通过使用原始查询来实现这一目标:
sql = 'SELECT *, COUNT(*) AS count FROM tics_tic WHERE content_type_id = '+ str(movie_ct.id) +' GROUP BY content_type_id, object_id ORDER BY Count DESC'
答案 0 :(得分:0)
........只需取出.values
...