Skip to main content

Nest Django formsets for multi-level hierarchical editing

Project description

https://travis-ci.org/nyergler/nested-formset.png?branch=master

Formsets are a Django abstraction that make it easier to manage multiple instances of a single Form on a page. In 2009 I wrote a blog post about using nesting formsets using Django 1.1. This is a generic implementation of the technique described there, targeting Django 1.6 and later. A follow-up blog post provides additional context.

Note that I do not advocate the use of nested Formsets: in every case I’ve considered them, they’ve led to usability issues and overly complex view code. This repository was created as an exercise in test driven development and abstraction.

Your mileage may vary.

Installing

You can install Django Nested Formsets using your favorite package management tool. For example:

$ pip install django-nested-formset

You can also install the latest development version:

$ pip install git+https://github.com/nyergler/nested-formset#egg=django-nested-formset

After installing the package, you can use the nestedformset_factory function to create your formset class.

Developing

If you’d like to work on the source, I suggest cloning the repository and creating a virtualenv.

$ cd nested-formset
$ virtualenv .
$ source bin/activate
$ python setup.py develop

The last line will install the installation and test dependencies.

To run the unit test suite, run the following:

$ python setup.py test

See Also

License

This package is released under a BSD style license. See LICENSE for details.

News

0.1.4

Release date: 7 March 2015

  • Dropped Django 1.5.x support; it’s no longer receiving security updates or maintenance.

  • Updated accepted factory kwargs for Django 1.7 and later

  • Fixed builds against Django tip.

0.1.3

Release date: 28 September 2014

  • Test against Django 1.7-final

  • has_changed now takes into account all nested forms.

0.1.2

Release date: 20 May 2014

  • Support for passing files to bound nested formsets

  • The media property now rolls up all nested media

  • Compatibility with Django 1.7.

0.1.1

Release date: 6 March 2014

  • Bump minor version number to get PyPI to index the development version link.

0.1

Release date: 6 March 2014

  • Initial release on PyPI

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django-nested-formset-0.1.4.tar.gz (9.6 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page