Отношения таблиц с моделями django

У меня есть модели для таких предметов, как английский, биология и т.д., а с другой стороны у меня есть модель под названием учителя, которая хранит записи об учителях. Я работаю с Django, и проблема в том, что я не знаю, как я могу создать отношения "многие ко многим" между учителями и предметами, что я пытаюсь достичь, это назначить ответственность учителей. Я пытался сделать модели English, Biology и другие в одну модель под названием Subjects и позже использовать Manytomanyfield, но частоты совершенно разные и я сложил. некоторые из моих моделей приведены ниже.

`class English(models.Model): studentID = models.IntegerField()

l_1 = models.DecimalField(max_digits=5, decimal_places=2, default=0)
s_1 = models.DecimalField(max_digits=5, decimal_places=2, default=0)
r_1 = models.DecimalField(max_digits=5, decimal_places=2, default=0)
w_1 = models.DecimalField(max_digits=5, decimal_places=2, default=0)
hw_1 = models.DecimalField(max_digits=5, decimal_places=2, default=0)
t_1 = models.DecimalField(max_digits=5, decimal_places=2, default=0)
p_1 = models.DecimalField(max_digits=5, decimal_places=2, default=0)

l_2 = models.DecimalField(max_digits=5, decimal_places=2, default=0)
s_2 = models.DecimalField(max_digits=5, decimal_places=2, default=0)
r_2 = models.DecimalField(max_digits=5, decimal_places=2, default=0)
w_2 = models.DecimalField(max_digits=5, decimal_places=2, default=0)
hw_2 = models.DecimalField(max_digits=5, decimal_places=2, default=0)
t_2 = models.DecimalField(max_digits=5, decimal_places=2, default=0)
p_2 = models.DecimalField(max_digits=5, decimal_places=2, default=0)



def get_mark_30_first(self):
    sum = self.l_1+self.s_1+ self.r_1 + self.w_1 + self.hw_1 + self.t_1 +self.p_1
    return sum

def get_mark_30_second(self):
    sum = self.l_2+self.s_2+ self.r_2 + self.w_2 + self.hw_2 + self.t_2 +self.p_2
    return sum

def getMark_60(self):
    return self.get_mark_30_second()+self.get_mark_30_first()`

.....

class Biology(models.Model):
studentID = models.IntegerField()
l_2 = models.DecimalField(max_digits=5, decimal_places=2, default=0)
cw_1 = models.DecimalField(max_digits=5, decimal_places=2, default=0)
hw_1 = models.DecimalField(max_digits=5, decimal_places=2, default=0)
hw_2 = models.DecimalField(max_digits=5, decimal_places=2, default=0)
l_1 = models.DecimalField(max_digits=5, decimal_places=2, default=0)
pro_1 = models.DecimalField(max_digits=5, decimal_places=2, default=0)
pn_1 = models.DecimalField(max_digits=5, decimal_places=2, default=0)
t_1 = models.DecimalField(max_digits=5, decimal_places=2, default=0)

cw_2 = models.DecimalField(max_digits=5, decimal_places=2, default=0)
cw_3 = models.DecimalField(max_digits=5, decimal_places=2, default=0)
hw_3 = models.DecimalField(max_digits=5, decimal_places=2, default=0)
pn_2 = models.DecimalField(max_digits=5, decimal_places=2, default=0)
t_2 = models.DecimalField(max_digits=5, decimal_places=2, default=0)
pro_2 = models.DecimalField(max_digits=5, decimal_places=2, default=0)

Как насчет того, чтобы использовать внешний ключ или поле многие-ко-многим в модели учителя в моделях английского языка, биологии и других предметов?

Вернуться на верх