【问题标题】:How Do I Represent Student-Lecturer Relationship in Django?我如何在 Django 中表示学生与讲师的关系?
【发布时间】:2017-03-08 19:11:59
【问题描述】:

所以我正在尝试制作一个旨在帮助学生和教师之间互动的网络应用程序。

但是,我需要知道如何在 Django 中构建关系模型。以下是您应该知道的两件事:

  1. 一位教师可以拥有许多学生(用户)。
  2. 一个学生只能有一个用户作为他的老师。

换句话说,老师的意思是让学生尽可能多,而每个学生只能有一位老师。

我应该如何在 Django 中表示这个?管理这种关系的最佳方式是什么?对于后一个问题,我正在考虑创建一个如下所示的类:

class Relationship(models.Model):
     ##student and lecturer models shall inherit the User class; hence, the


     student = models.ForeignKey(User, related_name = 'lecturer_set')
     lecturer = models.ForeignKey(User, related_name = 'student_set')

     class Meta:
         unique_together = ('student', 'lecturer')

PS:我知道上面的课程可能是错误的。只是想解释一下我需要在关系类中实现什么。

【问题讨论】:

标签: python mysql django


【解决方案1】:

这是一个标准的一对多关系,在 Django 中用一个简单的 ForeignKey 表示。

class Student(models.Model):
    teacher = models.ForeignKey(Teacher)

您根本不需要关系模型。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-02-03
    • 2017-01-21
    • 1970-01-01
    • 1970-01-01
    • 2018-06-03
    • 2022-10-09
    • 2019-12-11
    • 1970-01-01
    相关资源
    最近更新 更多