DJANGO НЕСКОЛЬКО ФОРМ НА ОДНОЙ СТРАНИЦЕ

При разработке веб-приложений на Django может возникнуть необходимость в создании страницы с несколькими формами. В таких случаях необходимо использовать механизмы Django для работы с множеством форм на одной странице.

Для работы с несколькими формами на одной странице можно использовать классы Django FormView и MultiFormMixin. Класс FormView отвечает за рендеринг формы, а MultiFormMixin позволяет использовать несколько форм на одной странице.

class MyFormView(FormView, MultiFormMixin): form_class = MyForm form_classes = {'second_form': MySecondForm} template_name = 'my_template.html' def get_success_url(self): return '/success/' def form_valid(self, form): form.save() return super().form_valid(form) def form_valid_second_form(self, form): form.save() return HttpResponseRedirect('/success/')

В приведенном выше примере на странице MyFormView отображаются две формы: MyForm и MySecondForm. Шаблон для страницы выглядит так:

{% csrf_token %} {{ form.as_p }} {{ second_form.as_p }}

Обратите внимание, что форма должна быть представлена в HTML-разметке, которая генерируется вызовом метода as_p формы.

#13. Использование форм, не связанных с моделями - Django уроки

Django в стартапе: от 0 до 150 000 строк кода, не жертвуя качеством

5.12 Формы в Django GET POST запросы

59 Связь \

#14. Формы, связанные с моделями. Пользовательские валидаторы - Django уроки

[Django Recipes] #1 Рендер нескольких форм на одной странице

Как сделать несколько форм на одной странице AutoOrder

BLGPG-BA6CBA9A1018-24-09-20-01

Новые материалы: