我正试图通过查询CategoryToRecipe
来获得Recipes
中当前使用的所有类别,而不存在任何重复。
class Category(models.Model):
name = models.CharField(max_length=50, null=True, blank=True)
def __str__(self):
return self.name
class CategoryToRecipe(models.Model):
recipe = models.ForeignKey(Recipe, on_delete=models.CASCADE)
name = models.ForeignKey(Category, null=True, on_delete=models.SET_NULL)
query_set = CategoryToRecipe.objects.values_list('name', flat=True).distinct()
query_set
是返回数字,我认为这是Category
的ID
,而不是名称(例如午餐、晚餐等(。
如何获取Category
的实际名称字符串?
正如@WillemVanOnsem在评论中所说,您没有访问相关对象name
属性,而是使用联接来访问,这在ORM中是这样完成的:
query_set = CategoryToRecipe.objects.values_list('name__name', flat=True).distinct()