Как настроить изображение, возвращаемое UpdateView

Я использую UpdateView для обновления информации о товарах в моем будущем веб-магазине в моем шаблоне. Когда я открываю свой шаблон, я обнаруживаю, что он отображает мне ссылку на изображение

edit_product.html

<form method="post">
    <div class="form-group">
        <label>Name</label>
            {{form.name}}
    </div>
    <div class="form-group">
        <label>Description</label>
            {{form.description}}
    </div>
    <div class="form-group">
        <label>Price</label>
            {{form.nominal_price}}
    </div>

    <div class="form-group">
        <label>Image</label>
           <img src="{{form.instance.photo.url}}" width="200"/>
    </div>
    <div class="form-group">
            {{form.photo}}
    </div>
  <button type="submit" class="btn btn-primary">Submit</button>
</form>

output

<form method="post">
    <div class="form-group">
        <label>Name</label>
            <input type="text" name="name" value="flawless legs" maxlength="255" required="" id="id_name">
    </div>
    <div class="form-group">
        <label>Description</label>
            <textarea name="description" cols="40" rows="10" required="" id="id_description">Epilateur de jambes pour femmes</textarea>
    </div>
    <div class="form-group">
        <label>Price</label>
            <input type="number" name="nominal_price" value="199" min="0" required="" id="id_nominal_price">
    </div>

    <div class="form-group">
        <label>Image</label>
           <img src="/media/products/images/449165_ALTMORE2.jpeg" width="200">
    </div>
    <div class="form-group">
            Currently: <a href="/media/products/images/449165_ALTMORE2.jpeg">products/images/449165_ALTMORE2.jpeg</a><br>
Change:
<input type="file" name="photo" accept="image/*" id="id_photo">
    </div>
  <button type="submit" class="btn btn-primary">Submit</button>
</form>

что я должен сделать, чтобы удалить это Currently: <a href="/media/products/images/449165_ALTMORE2.jpeg">products/images/449165_ALTMORE2.jpeg</a><br>

Я нашел хитрое решение :

я заменил

<div class="form-group">
            {{form.photo}}
    </div>

в моем html файле файлом входного типа <input type="file" name="photo" accept="image/*" id="id_photo"> и я отредактировал мои представления views.py

class ProductUpdateView(RedirectToPreviousMixin, UpdateView):
    model = Product
    form_class = ProductUpdateForm
    template_name = 'admin/product_update.html'

    def get_object(self):
        return Product.objects.get(name=self.kwargs['product_name'])
    def form_valid(self, form):
        form = form.save(commit=False)
        self.photo = form.photo
        form.save()
        return HttpResponseRedirect(self.get_success_url())
Вернуться на верх