Почему не изменяется изображение через форму на сайте на Django?
При добавлении поста изображение добавляется, а при изменении - нет.
создал модель
model.pyclass Ware(models.Model):
title = models.CharField(max_length = 130)
slug = models.SlugField()
description = models.TextField()
prise = models.DecimalField(max_digits = 7, decimal_places=0)
available = models.BooleanField(default=True)
image = models.ImageField(upload_to='images/', blank=True)
def __str__(self):
return self.title
перенёс в форму
forms.pyclass CommentsForm(forms.ModelForm):
class Meta:
model = Ware
fields = ['title', 'slug', 'prise', 'image', 'description', 'available']
views.pydef testimage_add(request):
if request.method != 'POST':
form=CommentsForm()
else:
form=CommentsForm(request.POST, request.FILES)
if form.is_valid():
post = form.save(commit=False)
form.save()
return HttpResponseRedirect("/")
context={'form': form}
return render(request, 'ware.html', context)
#функция изменения поста
def post_edit(request, pk):
post = get_object_or_404(Ware, pk=pk)
if request.method == "POST":
form = CommentsForm(request.POST, instance=post)
if form.is_valid():
post = form.save(commit=False)
post.author = request.user
form.save()
return HttpResponseRedirect("/")
else:
form = CommentsForm(instance=post)
return render(request, 'ware.html', {'form': form})
urls.pyfrom django.conf.urls import url
from django.views.generic import ListView, DetailView
from index.models import Ware
from . import views
from django.conf import settings
from django.conf.urls.static import static
urlpatterns = [
url('shop/(?P<pk>[0-9]+)/', DetailView.as_view(model = Ware, template_name = 'detail_ware.html')),
url('post/(?P<pk>[0-9]+)/edit/', views.post_edit, name='post_edit'),
url(r'^$', ListView.as_view(queryset=Ware.objects.all().order_by('-title')[:20],
template_name = 'index.html')),
] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)