@Dao131

Как правильно сделать редирект на форму админки django с передачей POST?

У меня есть шаблон страницы item.html, в этом шаблоне есть форма:
<!--shop/templates/shop/item.html-->
 <form action="{% url 'admin:supplier_prodsupp_add' %}" method="post">
    {% csrf_token %}
    <input type="hidden" name="product" value="{{ item.id }}">
    <input type="submit" class="btn btn-primary mb-3" value="Создать новую связку">
</form>

Я хочу чтобы при нажатии на кнопку "Создать новую связку", происходил ридерект на страницу формы админки django и чтобы там было предзаполнено поле, данные для которого берутся из скрытого инпута формы на странице шаблона.
Сама модель:
#supplier/models.py
class ProdSupp(models.Model):
    product = models.ForeignKey('shop.Product', on_delete=models.CASCADE, verbose_name='Товар')
    supplier = models.ForeignKey(Supplier, on_delete=models.CASCADE, verbose_name='Поставщик')
    art = models.CharField('Артикул', max_length=15)
    url_prod = models.URLField('Ссылка')
    price = models.DecimalField('Цена', max_digits=9, decimal_places=2)

    class Meta:
        verbose_name = 'Связка товар поставщик'
        verbose_name_plural = 'Связки товар поставщик'
        unique_together = ('product', 'supplier')

    def __str__(self):
        return str(self.product)


А это отображение шаблона страницы:
5e3effa559feb258783920.png

Если делать в лоб и в форме в атрибуте action прописать путь:

{% url 'admin:supplier_prodsupp_add' %}

То произойдет редирект, который будет мне нужен, заполнится поле на основе данных из скрытой формы, но на остальных полях будет ошибка и это мне кажется не верным. Скрин ниже. Поэтому и хочу узнать как, правильно делать редирект с передачей данных в форму админки django, чтобы при этом не выпадали ошибки.

Скрин:
5e3f00b8ae2fa197425552.png
  • Вопрос задан
  • 313 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы