Как изменить модель, чтобы иметь возможность предоставлять доступ пользователям в django

Я работаю над проектом учебного класса и я совсем новичок в Django. Как изменить мои модели (курс, пользователь) так, чтобы я мог добавлять студентов в курс двумя способами 1)Путем ввода кода класса студентами. 2) Отправляя приглашения на присоединение студентам из списка всех студентов, выбирая некоторых из них преподавателем, и если студент подтверждает/принимает, то он будет добавлен.

Я прилагаю модели ниже

модель пользователя

class CustomUser(AbstractUser):
    email = models.EmailField()
    is_teacher = models.BooleanField(default=False)
    is_student = models.BooleanField(default=False)

Модель курса

class Course(models.Model):
    course_name = models.CharField(max_length=200)
    course_id = models.CharField(max_length=10)
    course_sec = models.IntegerField(validators=[MinValueValidator(1),MaxValueValidator(25)])
    classroom_id = models.CharField(max_length=50,unique=True)
    created_by = models.ForeignKey(User,on_delete=models.CASCADE)
    slug=models.SlugField(null=True, blank=True)


    def __str__(self):
        return self.course_name

    def save(self, *args, **kwargs):
        self.slug = slugify(self.classroom_id)
        super().save(*args, **kwargs)

    def is_valid(self):
        pass
Вернуться на верх