所以我正在学习 Django 并尝试仅使用 Django ORM 函数通过外键获取值。我有 2 个表:用户表(默认 Django auth_user 系统表)和包含 student_id、user_id(FK) 和 nr_indeksu 的学生表(这是一个包含学生特定信息的附加信息的数字)。
class Student(models.Model):
user = models.ForeignKey(User)
nr_indeksu = models.BigIntegerField()
def __unicode__(self):
return unicode(self.user
我想通过用户模型获取 nr_indeksu。换句话说,执行这个查询(使用 QuerySet):
SELECT nr_indeksu FROM auth_user
INNER JOIN courses_student on auth_user.id = courses_student.user_id;
我试过使用 select_related() 函数:
u = User.objects.select_related().get(pk=2)
但是当我尝试访问 nr_indeksu 时:
u.nr_indeksu
我收到用户对象没有属性的错误(这是有道理的,因为 nr_indeksu 在学生模型中,但我不应该能够从用户那里获取它吗?)