Как сделать при создании экземпляра
Student
в базе данных, будут созданы отношения между экземпляом
Student
и некоторое количество экземпляров модели
Course
:
-Каждый созданный экземпляр модели
Student
должен иметь отношение по умолчанию к некоторым экземплярами
Course
-Пользователь не может вручную посещать другие части сайта для добавления нового отношения между
Student
и
Course
.
models.py
class Student(models.Model):
name = models.CharField(max_length=249)
def __str__(self):
return f'{self.name}'
def get_absolute_url(self):
return reverse('index')
class Course(models.Model):
name = models.CharField(max_length=249)
student = models.ManyToManyField(Student, through='Connect')
def __str__(self):
return f'{self.name}'
class Connect(models.Model):
student = models.ForeignKey(Student, on_delete=models.SET_NULL, null=True)
course = models.ForeignKey(Course, on_delete=models.SET_NULL, null=True)
views.py:
class CreateStudent(LoginRequiredMixin, CreateView):
login_url = '/admin/'
redirect_field_name = 'index'
template_name = 'app/create_student.html'
model = Student
fields = ('name',)