Django ClearableFileInput не обрабатывается должным образом - PullRequest
1 голос
/ 14 апреля 2020

Я использую грязные формы

Модель

class CadreAck(models.Model):
    cadre = models.ForeignKey('common.Cadre',on_delete=models.CASCADE,null=True,blank=True)
    dtg = models.DateTimeField(verbose_name='Datetime',null=True,blank=True)
    comments = models.TextField(null=True,blank=True)
    attachment = models.FileField(upload_to=cadre_ack_path,blank=True)

Форма

class CadreAckForm(forms.ModelForm):    
    class Meta:
        model = common_models.CadreAck
        exclude = ['dtg']
    def __init__(self, *args, **kwargs):
        super().__init__(*args, **kwargs)
        self.helper = FormHelper()
        self.helper.add_input(Submit('submit', 'Submit'))
        self.helper.form_method = 'POST' 

Шаблон

{% extends "cadreportal/base.html" %}
{% load crispy_forms_tags %}
{% load render_table from django_tables2 %}
{% load querystring from django_tables2 %}
{% load bootstrap4 %}

{% block content %}
  <h1> {{ header }} </h1><hr>
  {% if sub_header %} <h3>{{ sub_header }}</h3><hr> {% endif %}
  {% if sub_sub_header %} <h3>{{ sub_sub_header }}</h3><hr> {% endif %}

  {% if form%}
      <h3> {{ form_header }} </h3>
      {% crispy form %}
  {% endif %}
{% endblock content %}

Поле выбора файла закрывает установите флажок загрузки вложения и снимите флажок (см. фрагмент) Вывод

...