Hi guys i have a question So i have a model called curriculainfo class CurriculaInfo(models.Model): curricula_info_id = models.AutoField(primary_key=True) curricula = models.ForeignKey(Curricula, on_delete=models.CASCADE) classes = models.ForeignKey(Classes, on_delete=models.CASCADE) designation = models.ForeignKey(Designations, on_delete=models.SET_NULL, null=True, blank=True, related_name="designation") class Meta: db_table = "arc_curricula_info" verbose_name_plural = "Curricula Information" unique_together = ('curricula', 'classes', 'designation') ordering = ['curricula_info_id'] def __str__(self): return 'Course: %s, Module: %s, Class: %s, Instructor: %s (AY: %s, Sem: %s)' % ( self.curricula.course_period.course.course_abbreviation, self.curricula.module_period.module.module_abbreviation, self.classes.class_name, self.designation.staff.staff_full_name, self.curricula.course_period.period.academic_year, self.curricula.course_period.period.semester)`enter code here`
heres my forms.py class AssignClassForm(forms.ModelForm): designation = forms.ModelChoiceField(queryset=Designations.objects. filter(role__role_name='Instructor'), required=False) curricula = forms.ModelChoiceField(queryset=Curricula.objects.all(), widget=forms.HiddenInput) class Meta(object): model = CurriculaInfo fields = ['curricula', 'classes', 'designation'] heres my views.py class CurriculumClasses(CreateView): model = CurriculaInfo form_class = AssignClassForm template_name = 'architect/assignclasses.html' success_url = '/create-success/' def get_initial(self): course = self.kwargs.get('course_abbr') year = self.kwargs.get('year') semester = self.kwargs.get('semester') module = self.kwargs.get('module_abbr') curricula = get_object_or_404(Curricula, course_period__course__course_abbreviation=course, module_period__module__module_abbreviation=module, course_period__period__academic_year=year, course_period__period__semester= semester) return { 'curricula': curricula } def get_context_data(self, **kwargs): context = super().get_context_data(**kwargs) context['classes'] = Classes.objects.all() return context The get_initial method takes in values from the url to return the value curricula to the forms.py field, while the get_context_data sends classes values to the template <form method="post" action="{% url 'curriculum_classes' course_abbr module_abbr year semester %}"> {% csrf_token %} {{ form.non_field_errors }} {{ form.curricula }} <div class="fieldWrapper"> {% for class in classes %} <input class="form-check-input" type="checkbox" id="classes" value ="{{ class.class_id }}"> <label class="form-check-label" for="autoSizingCheck">{{ class.class_name }}</label> {{ form.designation }} {% endfor %} </div> <input class='btn btn-primary' type='submit' value='Submit'/> </form> In the html i use a loop to render checkboxes based on the records collected from the classes in views.py get_context_data. So in my use case i am trying get it so when i submit the form the number of object it creates is based on the number of checkboxes(representing classes) ticked. Then in each object the classes value will be different while the designation value will be based on dropdown select and curricula values for each of the object remains the same, my current method does not input any value so how to i go about doing this. -- You received this message because you are subscribed to the Google Groups "Django users" group. To unsubscribe from this group and stop receiving emails from it, send an email to django-users+unsubscr...@googlegroups.com. To post to this group, send email to django-users@googlegroups.com. Visit this group at https://groups.google.com/group/django-users. To view this discussion on the web visit https://groups.google.com/d/msgid/django-users/ae0d35db-6b77-48c0-a25d-85593ed9ff5f%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.