我正在构建一个项目,其中我将有3种类型的用户。
超级管理员 老师 学生
教师和学生将在一个名为Class的表中,每个班级将有一名教师和几名学生。
据我所知(非常有限),Django只为所有类型的用户提供一个用户表,但我不知道如何继续,因为我需要分离的表来保持数据的有序性而不会减少,除了与其他表格有关。
有没有什么解决方案可以解决这个问题?
答案 0 :(得分:0)
您可以实现与此类似的 related_name 属性:
from django.contrib.auth.models import User
class ClassRoom(models.Model):
# One classroom one teacher
teacher = models.ForeignKey(User, related_name="teacher")
# One classroom many students
student = models.ManytoManyField(User, blank=True, null=True,
related_name="students")
.....
有关详细信息,请参阅以下链接:
Django model with Foreign Key and ManyToMany relations to same model
Two sets of users (teacher and student) in Django authentication