以下是我的模型类:
class Ticket(models.Model):
user = models.ForeignKey(User)
draw = models.ForeignKey(Draw)
numbers= models.CharField(max_length=25)
class Draw(models.Model):
numbers = models.CharField(max_length=25)
我最初有一个查询,它将我的所有绘图对象分组,并给出绘制对象的每个id的计数:
Ticket.objects.values('draw').annotate(total = models.Count('draw'))
列出:
{'draw': 55L, 'total': 1}
{'draw': 13L, 'total': 16}
{'draw': 12L, 'total': 4}
现在我要做的是显示与每一行相关的draw.numbers。我试过通过模板直接访问它,但它没有用。我以为我可以用这些绘图ID进行另一个查询来查找相关的数字。我不知道该怎么做。
答案 0 :(得分:0)
以下代码将遵循外键关系并打印与numbers
对象关联的所有draw
。我不确定annotate
结果是否相同。
Ticket.objects.values('draw', 'draw__numbers')
至于查询绘图ID以查找其关联数字,您可以迭代列表并查询draw
个对象:
draw_ids = [i['draw'] for i in input_list]
output_list = Draw.objects.filter(numbers__in=draw_ids)