0

有人可以帮我解决这个 ManyToManyField 问题吗

模型.PY

class Course(models.Model):
    course_code = models.CharField(max_length=8, unique=True)
    course_name = models.CharField(max_length=128, unique=True)
    is_active = models.BooleanField(default=True)

    def __str__(self):
        return self.course_code


class Degree(models.Model):
    degree_code = models.CharField(max_length=16, unique=True)
    degree_name = models.CharField(max_length=128, unique=True)
    courses = models.ManyToManyField(Course)
    is_active = models.BooleanField(default=True)

    def __str__(self):
        return self.degree_code

现在当我查询

>>> Degree.objects.values_list('courses')
[(4,), (3,), (1,), (5,), (4,), (3,), (2,), (1,)]

我正在获取 ID,如何获取课程名称而不是 ID?

4

1 回答 1

1

您可以通过访问相关类的字段来做到这一点:

Degree.objects.values_list('courses__course_name')

字段查找的文档对此进行了解释。

于 2014-04-02T16:03:20.650 回答