Django信号外键

时间:2019-10-30 04:56:15

标签: django

model.py

class StudentsEnrollmentRecord(models.Model):
Student_Users = models.ForeignKey(StudentProfile, related_name='students', on_delete=models.CASCADE, null=True)
School_Year = models.ForeignKey(SchoolYear, related_name='+', on_delete=models.CASCADE, null=True, blank=True)
Courses = models.ForeignKey(Course, related_name='+', on_delete=models.CASCADE, null=True, blank=True)
Section = models.ForeignKey(Section, related_name='+', on_delete=models.CASCADE, null=True, blank=True)
Payment_Type = models.ForeignKey(PaymentType, related_name='+', on_delete=models.CASCADE, null=True)
Education_Levels = models.ForeignKey(EducationLevel, related_name='+', on_delete=models.CASCADE, blank=True,
                                     null=True)
Remarks = models.TextField(max_length=500, null=True, blank=True)

class SubjectSectionTeacher(models.Model):
School_Year = models.ForeignKey(SchoolYear, related_name='+', on_delete=models.CASCADE, null=True)
Education_Levels = models.ForeignKey(EducationLevel, related_name='+', on_delete=models.CASCADE, blank=True)
Courses = models.ForeignKey(Course, related_name='+', on_delete=models.CASCADE, null=True, blank=True)
Sections = models.ForeignKey(Section, related_name='+', on_delete=models.CASCADE, null=True)
Subjects = models.ForeignKey(Subject, related_name='+', on_delete=models.CASCADE, null=True)
Employee_Users = models.ForeignKey(EmployeeUser, related_name='+', on_delete=models.CASCADE, null=True)

class StudentsEnrolledSubject(models.Model):
Students_Enrollment_Records = models.ForeignKey(StudentsEnrollmentRecord, related_name='+',
                                                on_delete=models.CASCADE, null=True)
Subject_Section_Teacher = models.ForeignKey(SubjectSectionTeacher, related_name='+', on_delete=models.CASCADE,
                                            null=True)

我在模型中对此进行了编码

def studentenrolled(sender,instance, **kwargs):
    if kwargs['created']:
        ireceived = StudentsEnrolledSubject.objects.create(Students_Enrollment_Records=instance.Student_Users,
                                                           Subject_Section_Teacher=SubjectSectionTeacher.Employee_Users)
post_save.connect(studentenrolled, sender=StudentsEnrollmentRecord)

这是我得到的错误

my error

我只希望每次管理员输入/更新StudentsEnrollmentRecord.Section和StudentsEnrollmentRecord.Course时,它将自动从SubjectSectionTeacher搜索Employee_Users,并将其自动保存在StudentsEnrolledSubject中

我不知道我在django信号中做的是否正确,请帮助我!

0 个答案:

没有答案