Я получаю Это поле является обязательным при использовании формы, которую генерирует django.
У меня есть модель сканирования, которая выглядит следующим образом:
class Scan(models.Model):
device = models.ForeignKey(Device, null=True, on_delete=models.SET_NULL)
created_at = models.DateTimeField('Created', auto_now=True)
data = models.FileField(upload_to='uploads/')
def __str__(self):
return str("{}-{}".format(self.device, self.created_at))
У меня определено CreateView:
class ScanCreate(LoginRequiredMixin, CreateView):
model = Scan
fields = '__all__'
Мой URL-адрес
urlpatterns = [
...
path('scan/create/', views.ScanCreate.as_view(), name='scan-create'),
...
]
и, наконец, шаблон scan_form.html
{% block content %}
<form action="" method="post">
{% csrf_token %}
<table>
{{ form.as_table }}
</table>
<input type="submit" value="Submit">
</form>
{% endblock %}
При выборе файла для загрузки и отправки формы я получаю «Это поле обязательно для заполнения». ошибка и запрос не выполнен:
Файл был выбран для загрузки, так почему же поле отчета django обязательно для заполнения?