Django CreateView в модальной форме не отображается

У меня есть простой CRUD для таблицы с именем Clasificacion. Проблема в том, что я хочу использовать модальную форму для вставки записи, но на самом деле я не использую форму Django form, вместо этого я объявил обычную форму со всеми полями по одному, но я хотел бы использовать From, но не могу показать содержимое form, вместо этого модальная форма показывает пустоту с кнопкой ok.Эта таблица имеет модель, объявленную как:

class Clasificaciones(models.Model):
    clasificacion=models.CharField(max_length=30)
    detalles=models.CharField(max_length=1000)

Вот как я объявил ListView и CreateView

class ClasificacionesListView(ListView):
    model = Clasificaciones
    template_name = 'clasificacion/index.html'
    def get_context_data(self, **kwargs):
        context = super().get_context_data(**kwargs)
        context['title'] = "Lista de clasificaciones"
        return context

class ClasificacionesCreateView(SuccessMessageMixin, CreateView):
    model = Clasificaciones
    form_class = ClasificacionesForm
    template_name = 'clasificacion/index.html'
    success_url = reverse_lazy('clasificaciones')
    success_message = "Insertado correctamente!!!!"

    def get_context_data(self, **kwargs):
        context = super().get_context_data(**kwargs) 
        return context

а это index.html с модалом. Модал находится в другой директории, но не работает, если я помещаю в тот же файл index.html

и модальный код, закомментировал входы, этот способ работает, но я хотел бы использовать form

<div class="modal fade" id="modalAddClasificacion">
  <div class="modal-dialog">
    <div class="modal-content">
      <div class="modal-header">
        <h4 class="modal-title">Adicionar clasificación</h4>
        <button type="button" class="close" data-dismiss="modal" aria-label="Cerrar">
          <span aria-hidden="true">&times;</span>
        </button>
      </div>
      <div class="modal-body">
        <div class="row">
          <form id="addclasificacion" method="POST">
            {% csrf_token %}
               <div class="row">
                  {% for field in form.visible_fields %}
                    <div class="col-xs-12 col-sm-12 col-md-12">
                        <div class="form-group">
                            <strong>{{ field.label }}</strong>
                            {{ field }}
                        </div>
                    </div>
                  {%endfor%}
                  <!-- <div class="col-12">
                      <div class="form-group">
                          <strong>Clasificación:</strong>
                          <input type="text" name="clasificacion" class="form-control" placeholder="Clasificación">
                      </div>
                  </div>
                  <div class="col-12">
                      <div class="form-group">
                          <strong>Detalles:</strong>
                          <textarea class="form-control" style="height:150px" name="detalles" placeholder="Detalles"></textarea>
                      </div>
                  </div> -->
                  <div class="col-xs-12 col-sm-12 col-md-12 text-center">
                          <button type="submit" class="btn btn-primary">Insertar</button>
                  </div>
              </div>
          </form>
        </div>
      </div>
    </div>
    <!-- /.modal-content -->
  </div>
  <!-- /.modal-dialog -->
</div>

Не работает, потому что я должен добавить в контекстную переменную форму, в данном случае модель Form to Categoria. Также я должен добавить в Create форму, потому что я не использую шаблон create. Вот ответ:

class ClasificacionesListView(ListView):
    model = Clasificaciones
    template_name = 'clasificacion/index.html'
    def get_context_data(self, **kwargs):
        context = super().get_context_data(**kwargs)
        context['title'] = "Lista de clasificaciones"
        context['form'] = ClasificacionesForm()#here the detail.
        return context

Вернуться на верх