Как добавить новую запись в таблицу "многие ко многим" в Django?
У меня есть две модели Course и Educators. Курс имеет 3 поля course_name, course_educators и course_past_educators, которые связывают преподавателей с курсами по принципу "многие ко многим". Я хочу написать функцию, чтобы каждый раз, когда в поле course_educators добавляется новая запись, эта запись копировалась в поле course_past_educators.
#models.py
#code for Educators model
class Educators(models.Model):
educator_name=models.CharField(max_length=20,default=None)
educator_img = models.ImageField(upload_to='educators_img',default=None)
#code for Courses model
class Course(models.Model):
course_name = models.CharField(max_length=100)
course_educators=models.ManyToManyField(Educators, related_name='current_educators', default=None, blank=True)
course_past_educators=models.ManyToManyField(Educators, related_name='past_educators', default=None, blank=True)
#views.py
#This is the function I wrote so that entries into course_past_educators are automatically added when course_educators is added with another entry.
@receiver(m2m_changed, sender=Course.course_educators.through)
def create_past_educator_on_add(sender, instance, action, reverse, model, pk_set, **kwargs):
if action == 'post_add' and reverse is False:
currentEducators=instance.course_educators.all()
for currentEducator in currentEducators:
instance.course_past_educators.add(currentEducator)
Я использую админ-панель Django для добавления преподавателей, но они не добавляются в course_past_educators. Как исправить эту проблему?