Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

TimBest/django-multi-form-view

Repository files navigation

Django Multi. Form View

CircleCI codecov PyPI

Django class based views for using more than one Form or ModelForm in a single view.

Install

$ pip install django-multi-form-view

Usage

MultiFormView (Example)

class multi_form_view.MultiFormView A single view that can display multiple Django forms. Handles displaying, redisplaying on error, and redirects on form success in.

Extends

  • django.views.generic import FormView

Attributes and Methods

  • form_classes A dictionary containing to forms for the view.
  • are_forms_valid() Check if all forms defined in form_classes are valid.
  • forms_valid() Redirects to get_success_url().
  • forms_invalid() Renders a response containing the form errors.
  • get() Render the forms.
  • get_context_data() Adds the results of get_forms() to the context dictionary with the key 'forms'.
  • get_forms(). Initializes the forms defined in form_classes with initial data from get_initial() and kwargs from get_form_kwargs().
  • get_form_kwargs(). Build the keyword arguments required to instantiate the form.
  • get_initial() Returns a copy of initial with empty initial data dictionaries for each form.
  • post() Uses are_forms_valid() to call either forms_valid() or forms_invalid().

MultiModelFormView (Example)

class multi_form_view.MultiModelFormView A single view that can display multiple Django ModelForms. Handles displaying, redisplaying on error, and redirects on form success in.

Extends

  • multi_form_view.MultiFormView

Attributes and Methods

  • forms_valid() Calls save() on each form.
  • get_forms(). Initializes the forms defined in form_classes with initial data from get_initial(), kwargs from get_form_kwargs() and form instance object from get_objects().
  • get_objects() Returns dictionary with the instance objects for each form. Keys should match the corresponding form.

Demo

$ cd demo
$ pip3 install -r requirements.txt
$ python3 manage.py migrate
$ python3 manage.py runserver

Testing

Install headless chrome

$ python3 demo/manage.py behave

About

Django class based views for using more than one form in a single view

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 7

AltStyle によって変換されたページ (->オリジナル) /