Django generic many-to-many field
© 2014-2018 Thomas Khyn
Django generic many-to-many field implementation.
This django application exposes a GM2MField that combines the features of the standard Django ManyToManyField and GenericForeighKey and that can be used exactly the same way.
It has been tested with Django 1.11 and 2.0 and the latest minor versions of Python 2 and 3 (Django 2.0 only supports Python 3).
If you like django-gm2m and are looking for a way to thank me and/or encourage future development, here is my BTC or BCH donation address: 1EwENyR8RV6tMc1hsLTkPURtn5wJgaBfG9.
- Works like the built-in Django related fields
- Creates one table per relation, like ManyToManyField, and not one big table linking anything to anything (django-generic-m2m’s default approach)
- No need to modify nor monkey-patch the existing model classes that need to be linked
- Automatic reverse relations when an instance is added
- Related objects prefetching
- Through models support
- Deletion behaviour customization using signals
- Migrations support
The documentation is hosted on readthedocs. You’ll find a quick start and the description of all django-gm2m’s advanced features.