title: Why is my ModelChoiceField showing three forms instead of two and why is it not reading my choices?
body: <p><a href="https://i.stack.imgur.com/SVG5a.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/SVG5a.png" alt="enter image description here"></a>
  First of all, I have two model forms fused into one form and they are supposed to show topic name and question type, but for some reason, three forms are showing up and the first one is not showing choices where the second one is showing up two times, and I don't want the second one which is the one with the choices showing up in it because my CSS are not applied on it.</p>
  
  <ul>
  <li>Choices are not showing up.</li>
  <li>Three forms instead of two.</li>
  </ul>
  
  <p>This is my <code>model.py</code></p>
  
  <pre><code>from django.db import models
  from home.choices import *
  
  # Create your models here.
  
  class Topic(models.Model):
      topic_name = models.IntegerField(
                      choices = question_topic_name_choices, default = 1)
      def __str__(self):
          return '%s' % self.topic_name
  
  class Image (models.Model):
      image_file = models.ImageField()
  
      def __str__(self):
          return '%s' % self.image_file
  
  class Question(models.Model):
      questions_type = models. IntegerField(
                      choices = questions_type_choices, default = 1)
      question_topic = models.ForeignKey(    'Topic',
                                      on_delete=models.CASCADE,
                                      blank=True,
                                      null=True)
      question_description = models.TextField()
      question_answer = models.ForeignKey(    'Answer',
                                      on_delete=models.CASCADE,
                                      blank=True,
                                      null=True)
      question_image = models.ForeignKey(    'Image',
                                      on_delete=models.CASCADE,
                                      blank=True,
                                      null=True)
  
      def __str__(self):
          return '%s' % self.question_description
  
  class Answer(models.Model):
      answer_description = models.TextField()
      answer_image = models.ForeignKey(    'Image',
                                      on_delete=models.CASCADE,
                                      blank=True,
                                      null=True)
  
      def __str__(self):
          return '%s' % self.answer_description
  </code></pre>
  
  <p>This is my <code>forms.py</code></p>
  
  <pre><code>from django import forms
  from betterforms.multiform import MultiModelForm
  from .models import Topic, Image, Question, Answer
  from .choices import questions_type_choices, question_topic_name_choices
  
  class TopicForm(forms.ModelForm):
      topic_name      =   forms.ModelChoiceField(
                      queryset = Topic.objects.all(),
                      widget = forms.Select(
                      choices=(question_topic_name_choices),
                      attrs = {'class': 'home-select-one'}
                      ))
      class Meta:
          model = Topic
          fields = ['topic_name',]
  
  class QuestionForm(forms.ModelForm):
      question_type =   forms.ModelChoiceField(
                      queryset = Topic.objects.all(),
                      widget = forms.Select(
                      choices=(questions_type_choices),
                      attrs = {'class': 'home-select-two'}
                      ))
      class Meta:
          model = Question
          fields = ['questions_type',]
  class QuizMultiForm(MultiModelForm):
      form_classes    =   {
                  'topics':TopicForm,
                  'questions':QuestionForm
      }
      def save(self, commit=True):
          objects = super(QuizMultiForm, self).save(commit=False)
  
          if commit:
              topic_name = objects['topic_name']
              topic_name.save()
              question_type = objects['question_type']
              question_type.topic_name = topic_name
              question_type.save()
          return objects
  </code></pre>
  
  <p>This is my <code>views.py</code></p>
  
  <pre><code>    from django.shortcuts import render, render_to_response
      from django.views.generic import CreateView
      from home.models import Topic, Image, Question, Answer
      from home.forms import QuizMultiForm
  
  
  
      def QuizView(request):
          if request.method == "POST":
              form = QuizMultiForm(request.POST)
              if form.is_valid():
                  pass
          else:
              form = QuizMultiForm()
          return render(request, "index.html", {'form': form})
  </code></pre>
  
  <p>This is the <code>choices.py</code></p>
  
  <pre><code>question_topic_name_choices = (
      (1, ("Topic #1: Measurements and Uncertainties")),
      (2, ("Topic #2: Mechanics")),
      (3, ("Topic #3: Thermal Physics")),
      (4, ("Topic #4: Waves")),
      (5, ("Topic #5: Electricity and Magnetism")),
      (6, ("Topic #6: Circular Motion and Gravitation")),
      (7, ("Topic #7: Atomic, Nuclear and Particle Physics")),
      (8, ("Topic #8: Energy Production")),
      (9, ("Topic #9: Wave Phenomena (HL Only)")),
      (10, ("Topic #10: Fields (HL Only)")),
      (11, ("Topic #11: Electromagnetic Induction (HL Only)")),
      (12, ("Topic #12: Quantum and Nuclear Physics (HL Only)")),
      (13, ("Option A: Relativity")),
      (14, ("Option B: Engineering Physics")),
      (15, ("Option C: Imaging")),
      (16, ("Option D: Astrophysics"))
          )
  
  questions_type_choices = (
      (1, ("Multiple Choice Questions")),
      (2, ("Problem Solving Questions")))
  </code></pre>
  
  <p>This is the template</p>
  
  <pre><code>{% extends 'base.html' %}
    {% block content %}
          &lt;form  method="POST"&gt;
            {% csrf_token %}
            {{ form.as_p }}
            &lt;button type="submit" id="home-Physics-time-button"&gt;It is Physics Time&lt;/button&gt;
          &lt;/form&gt;
      {% endblock content %}
  </code></pre>
  
  <p>Thank you for help!</p>