Несколько форм на одной странице Django - PullRequest
0 голосов
/ 25 февраля 2020

Как я могу добавить несколько форм на страницу? Мой код в настоящее время отображает только одну форму, как мне добавить другую форму в мой код?

class OrderUpdateView(UpdateView):
    model = Order
    template_name = 'order_update.html'
    #in this expample only one form
    form_class = OrderEditForm


    def get_success_url(self):
        return reverse('update_order', kwargs={'pk': self.object.id})

    def get_context_data(self, **kwargs):
        context = super().get_context_data(**kwargs)
        instance = self.object
        qs_p = Product.objects.filter(active=True)[:12]
        products = ProductTable(qs_p)
        order_items = OrderItemTable(instance.order_items.all())
        RequestConfig(self.request).configure(products)
        RequestConfig(self.request).configure(order_items)
        context.update(locals())
        return context

1 Ответ

0 голосов
/ 25 февраля 2020

Можете ли вы попробовать ниже.

class OrderUpdateView(UpdateView):
    model = Order
    template_name = 'order_update.html'
    #in this expample only one form
    form_class = OrderEditForm


    def get_success_url(self):
        return reverse('update_order', kwargs={'pk': self.object.id})

    def get_context_data(self, **kwargs):
        context = super().get_context_data(**kwargs)
        instance = self.object
        qs_p = Product.objects.filter(active=True)[:12]
        products = ProductTable(qs_p)
        order_items = OrderItemTable(instance.order_items.all())
        RequestConfig(self.request).configure(products)
        RequestConfig(self.request).configure(order_items)
        context.update(locals())
        context['form2'] = form2_form()
        context['form3'] = form3_form()
        return context

order_update. html


<html>
some code context from mydetails class...
<form>
{% csrf_token %}
{{ form2 }}
</form>
<form>
{% csrf_token %}
{{ form3 }}
</form>
</html>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...