Skip to main content
Python Software Foundation 20th Year Anniversary Fundraiser  Donate today!

Django admin fk and m2m dynamic choices by providing callback support

Project description


.. image::
:alt: Build Status

.. image::
:alt: Coverage Status

Django appilcation that provides fk and m2m dynamic choices and react to django.contrib.admin
edit/add view interaction to update those choices.


.. code:: sh

pip install django-dynamic-choices

django-dynamic-choices changelog

Version 1.0.0, 22 february 2015
* Added support for Django 1.7

Version 0.3.0, 6 august 2012
* Simplified grouped queryset validation
* Added tested support for 1.4.X

Version 0.2.0, 31 March 2012:
* dropped django 1.2.X support
* added django 1.4.X support

Version 0.1.8, 17 August 2011:
* added DynamicChoicesOneToOneField.

Version 0.1.7, 20 June 2011:
* fixed the FilteredSelectMultiple widget handler to works when the the widget
is not initialized yet such as when the widget is used in an inline.
* simplified choices callback validation logic by using the class_prepared signal.
* added minimal testing for validation logic.
* fixed an issue with lazy reference FK and M2M.

Version 0.1.6, 7 May 2011:
* raise exception when a custom admin add|change_form_template is specified
on a DynamicAdmin if it doesn't extends the dynamic_choices one.
* make sure admin select widgets trigger 'change' events when a new option is added to them
without relying on DOMEvents.
* make sure DynamicModelChoiceField's queryset returns distinct objects to avoid raising
MultipleObjectsReturned when the dynamically generated queryset spans over multiple tables
and returns the same object twice.

Version 0.1.5, 5 April 2011:

* fixed some issue with the add link binders in the admin
* make DynamicChoicesQueryset cloneable

Version 0.1.4, 8 March 2011:

* make sure Promise objects such as translation objects specified in the choices callback
are encoded correcly.
* make sure admin select widgets trigger 'change' events when a new option is added to them
* added js field onchange bindings while making sure to avoid circular references

Version 0.1.3, 18 February 2011:

* added js api to bind FK/M2M admin widget add links to specific fields
* added support for multiple jQuery versions
* fixed an issue with admin dynamic-choices js files not considering settings.(STATIC|MEDIA)_URL. Thanks
* embed admin choices binder directly in the page
(make sure to extend "admin/dynamic_choices_change_form.html" if you're overriding DynamicAdmin.change|add_form_template)

Version 0.1.2, 5 February 2011:

* fixed an issue with choices callback with no lookups
* fixed an issue with user defined forms on DynamicAdmin and inlines
* handle 3+ depth descriptors (field__field__...)

Version 0.1.1, 29 December 2010:

* fixed an issue with formset empty form
* added support for south
* added support for reversion

I'm planing to refactor the code for version 0.2.0 in order to add support for dynamic managers or "model instance managers".
Dynamic choices will be bound to such managers. Data provided will also be wrapped in some class and tuple choices in some kind of QuerysetCollection.
Stay tuned!

Version 0.1.0, 27 December 2010:

* initial release

At the moment this project is more of a "proof of concept" or exploration in order to find a clever way of adding dynamic model field choices to django.

Download files

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

Files for django-dynamic-choices, version 1.1.0
Filename, size File type Python version Upload date Hashes
Filename, size django_dynamic_choices-1.1.0-py2.py3-none-any.whl (21.1 kB) File type Wheel Python version py2.py3 Upload date Hashes View
Filename, size django-dynamic-choices-1.1.0.tar.gz (16.9 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring DigiCert DigiCert EV certificate Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page