I have multiple images in my product model. I got parts from here: multiple images
I want to change old images to new when I use change_view.
Here's my model.py:
class Product(models.Model):
    title = models.CharField(max_length = 45)
    description = models.TextField(null = True)
    image = models.ImageField(upload_to = 'store/full/', null = True, blank = True)
    def __str__(self):
        return self.title
    class Meta:
        ordering = ['title']
        verbose_name = "Product"
        verbose_name_plural = "Products"
def get_image_filename(instance, filename):
    title = instance.product.title
    idd = instance.product.id
    slug = slugify(title)
    return "store/additional//%s-%s-%s" % (idd, slug, filename)
class ProductImage(models.Model):
    product = models.ForeignKey(Product, default = None, on_delete = models.CASCADE, related_name = 'image_set')
    image = models.ImageField(upload_to = get_image_filename, verbose_name = 'Image')
Here's my views.py:
def create_view(request):
    ImageFormSet = modelformset_factory(ProductImage, form = ProductImageForm, extra = 4)
    form = ProductForm()
    if request.method == 'POST':
        form = ProductForm(request.POST, files = request.FILES)
        formset = ImageFormSet(request.POST, files = request.FILES, queryset = ProductImage.objects.none())
        if form.is_valid() and formset.is_valid():
            obj = form.save(commit = False)
            obj.save()
            for form in formset.cleaned_data:
                if form:
                    image = form['image']
                    photo = ProductImage(product = obj, image = image)
                    photo.save()
            messages.success(request, "Created!")
            return redirect('shop.all')
        else:
            print(form.errors, formset.errors)
    else:
        formset = ImageFormSet(queryset = ProductImage.objects.none())
    context = {
        'form': form, 'formset': formset
    }
    return render(request, 'shop/products/create.html', context)
def change_view(request, id):
    obj = get_object_or_404(Product, id = id)
    ImageFormSet = modelformset_factory(ProductImage, form = ProductImageForm, extra = 4)
    form = ProductForm(instance = obj)
    if request.method == 'POST':
        form = ProductForm(request.POST, files = request.FILES, instance = obj)
        formset = ImageFormSet(request.POST, files = request.FILES, queryset = ProductImage.objects.none())
        if form.is_valid():
            obj = form.save(commit = False)
            obj.save()
            for form in formset.cleaned_data:
                if form:
                    image = form['image']
                    photo = ProductImage(product = obj, image = image)
                    photo.save()
            return redirect('shop.detail', obj.id)
    else:
        formset = ImageFormSet(queryset = ProductImage.objects.filter(product__id=id))
    context = {
        'form': form, 'formset': formset
    }
    return render(request, 'shop/products/create.html', context)
My create.html file:
{% extends 'shop/layouts/layer.html' %}
{% block container %}
    <div>
        <form method="post" enctype="multipart/form-data">{% csrf_token %}
            {{ form.as_p }}
            {{ formset.management_form }}
            {% for form in formset %}
                {{ form.as_p }}
            {% endfor %}
            <input type="submit" value="Submit">
        </form>
    </div>
{% endblock %}
The question is 'How can I edit old "ProductImage" models on change_view and delete old image from "ProductImage"'.
