How can I delete an uploaded image from my updateview template? I tried using <input type="checkbox" onchange="submit();" name="{{ object.image }}-clear" id="{{ object.image }}-clear_id"> to remove the image but with no success.
I have django_cleanup in INSTALLED_APPS so I am just looking for a simple method to remove the image from my object and return to the currrent update view.
Code:
models.py:
class Report(models.Model):
image = models.FileField(storage=PublicMediaStorage(), blank=True)
forms.py:
class ReportCreate(forms.ModelForm):
def __init__(self, *args, **kwargs):
super(ReportCreate, self).__init__(*args, **kwargs)
class Meta:
model = Report
fields = ['image']
widgets = {'image': forms.FileInput(attrs={'onchange': 'submit();'}),}
Views.py:
class ReportView(LoginRequiredMixin, UserPassesTestMixin, UpdateView):
model = Report
template_name = 'myapp/report_update.html'
form_class = forms.ReportCreate
def form_valid(self, form):
form.instance.author = self.request.user
return super().form_valid(form)
urls.py:
urlpatterns = [
path('report/<int:pk>/', ReportView.as_view(), name='report-view'),
]
html:
<img src="{{ object.image }}"/>
<input type="file" name="image" onchange="submit();" class="fileinput fileUpload form-control-file" id="id_image">
<input type="checkbox" onchange="submit();" name="{{ object.image }}-clear" id="{{ object.image }}-clear_id">