首页 > 解决方案 > Django中的向后查找

问题描述

以下是我的模型类。

class Categories(models.Model):
  name= models.CharField(max_length=255, unique=True)


class Values(models.Model):
  category = models.ForeignKey(Categories)
  language = models.CharField(max_length=7)
  category_name = models.CharField(max_length=50)

可以说我已经得到了值列表。现在我想获取与此 Value 对象相关的 Category 的名称。我怎样才能做到这一点 ?将感谢您的帮助。

标签: djangodjango-modelsdjango-queryset

解决方案


您可以通过以下方式获取:

myValue.category.name # name of myValue

如果您正在获取多个Value对象,那么您可以使用.select_related(..)[Django-doc]来促进检索Category对象:

values = Value.objects.select_related('category')
for value in values:
    print(value.category.name)

注意:通常 Django 模型被赋予一个单数名称,所以Value代替Values, 和Category代替Categories.


推荐阅读