我有一个这样的Session模型:
class Session(models.Model):
user = models.ForeignKey(User, null=True, blank=True, on_delete=models.CASCADE, related_name="sessions")
flavor = models.ForeignKey(Flavor, null=True, blank=True, on_delete=models.CASCADE, related_name="sessions")
....我正在尝试运行一个查询:
sessions = Session.objects.all().values('flavor__pk', 'user__pk').distinct()但是当我打印sessions对象时,我得到了这样的结果:
<QuerySet [{'user__pk': 14544, 'flavor__pk': 1}, {'user__pk': 14544, 'flavor__pk': 1}, {'user__pk': None, 'flavor__pk': 30}, {'user__pk': 193, 'flavor__pk': 30}, '...(remaining elements truncated)...']>如果仔细观察,您会发现前两个条目是完全相同的{'user__pk': 14544, 'flavor__pk': 1}!这不是应该是截然不同的吗?
发布于 2018-08-25 16:49:50
我认为这段代码是有效的:
Session.objects.all().values_list('flavor__pk', 'user__pk').distinct()https://stackoverflow.com/questions/52012652
复制相似问题