I am receiving a This field is required error using a form view that django is generating.
I have a Scan model that looks like:
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))
I have a CreateView defined:
class ScanCreate(LoginRequiredMixin, CreateView):
model = Scan
fields = '__all__'
My url route is
urlpatterns = [
...
path('scan/create/', views.ScanCreate.as_view(), name='scan-create'),
...
]
and finally a scan_form.html template
{% block content %}
<form action="" method="post">
{% csrf_token %}
<table>
{{ form.as_table }}
</table>
<input type="submit" value="Submit">
</form>
{% endblock %}
On picking a file to upload and submitting the form, I get the 'This field is required.' error and the request fails:
The file has been selected for upload so why would django report field is required?