8
我的模型获得的独特的多对多条记录列表:从查询集
class Order(models.Model):
ordered_by = models.ForeignKey(User)
reasons = models.ManyToManyField(Reason)
class Reason(models.Model):
description = models.CharField()
基本上是一个用户创建一个订单,并给出该订单的原因。即约翰有两个订单(一个用于铅笔,因为他已经出门了,因为他不喜欢他现在的库存,另一个订单是因为他没有出栏)。
我想打印出一个列表,其中列出了用户下订单的所有原因。所以在约翰的情况下,它应该打印出“他不在”,“他不喜欢他现有的股票”;只有这两条线。如果我简单地选择所有约翰的命令,重复它们并打印出他们的“理由”,它会打印出“他不在”,“他不喜欢他现有的股票”,然后“他又出来了”。我不想要这些重复的值。
如何选择所有订单的理由清单,以便列表中包含所有唯一行?