在django中创建2个配置文件是否正确?我希望学生能够接触他的老师,并让老师也能接触到他的学生。我的意思是,如果我以学生身份登录,我想浏览一下教我的老师,如果我以老师的身份登录,我想浏览我教的学生。这样我就无法为老师和学生创建一个档案。
class Teacher(models.Model):
...
user = models.OneToOneField(User)
class Student(models.Model):
...
user = models.OneToOneField(User)
teacher = models.ManyToManyField(Teacher)
如果是这样,我的AUTH_PROFILE_MODULE看起来应该这样吗?
AUTH_PROFILE_MODULE = 'school.Teacher, school.Student'
会感激任何答案。 谢谢!
答案 0 :(得分:1)
您可以使用单个个人资料;
class People(models.Model):
user = models.ForeignKey(User)
teachers = models.ManyToManyField("self")
然后您可以使用
访问必要的信息teacher = People.objects.get(pk=<teacher_pk>)
students = People.objects.filter(teachers=teacher)
student = People.objects.get(pk=<student_pk>)
teachers = student.teachers.all()