A lightweight plugin for managing Django formsets with jQuery.
This jQuery plugin helps you create more usable Django formsets by allowing clients to add and remove forms on the client-side.
It was primarily developed by Stanislaus Madueke, and re-packaged as a static Django app (with a couple shiny new enhancements and more docs) by The Dallas Morning News.
This version of this plugin (like its predecessor) is available under the BSD License.
- Download this repo or install from PyPI:
```bash
pip install django-dynamic-formsets
```
-
Then add
dynamic_formsets
to yourINSTALLED_APPS
setting and runpython manage.py collectstatic
. -
You can now make your formsets dynamic by adding the following lines to a template:
```Django
{% load static %}
...
{% comment %}
(Your templated DOM here, possibly something like this:)
{% endcomment %}
<form id="my-form" method="post" action="">
{% csrf_token %}
{{ formset.media }}
{% for form in formset %}
<div class="individual-form">
{{ form.as_p }}
</div>
{% endfor %}
</form>
...
<script src="{% static "dynamic_formsets/jquery.formset.js" %}" type="text/javascript"> </script>
<script type="text/javascript">
$('.individual-form').formset();
</script>
```
Once you've followed steps 1 to 3 above, you're ready to customize the formset-handling javascript that's now on your page.
Detailed information about all the settings you can change in the javascript will be added to this repo very soon.