- #191: Fixed JS bug for popup in Django admin
- #178: Bug fixes
- #178: Fixed Pylint error
- #175: Fixed jQuery UI error
- #183: Migrated to GitHub Actions for CI
- #184: Added support for Django 3.2
- #168: Restored admin/js/jquery.init.js
- #164: Added all locales to distributable
- #162: Added missing files to MANIFEST.in, and removed .DS_Store files
- #150: Added German and Spanish translations
- #149: Removed admin/js/jquery.init.js from SortedCheckboxSelectMultiple
- #147: Dropped support for Django 2.0
- #152: Dropped support for Django 1.10
- #152: Add support for Python 3.8
- #152: Add support for Django 3.0
- #135: Updated README with Jazzband details, and added CONTRIBUTING.md
- #136: Dropped support for Python 2.6 and 3.3, and Django < 1.11
- #130: Added support for Python 3.7 and Django 2.0 to 2.2
- #130: Add support of custom through models (only for Django >= 2.2)
- #138: Added coverage reporting
- #101: Add support for a custom base class for the many to many intermediate class. See the README for documentation. Thank you Rohith Asrk for the patch.
- #87: Fix
AlterSortedManyToManyField
operation to support custom set_sort_field_name
.
- #104: Add compatibility for Django 1.10 and 1.11! Thank you Frankie Dintino for the patch.
- #94: Add french translation files. Mainly for strings in the admin. Thanks to ppython for the patch.
- #93: Prevent users from accidentally importing and using
ManyToManyField
instead ofSortedManyToManyField
fromsortedm2m
. Thanks Dayne May for the patch.
- #91 & #92: Fix admin widget, when used with Django 1.10. The add a new item opup was not closing. Thanks to Tipuch for the patch.
- #80 & #83: Fix
SortedMultipleChoiceField.clean
if the validated value isNone
. Thanks to Alex Mannhold for the patch.
- #57 & #81: Fix add related object popup error prevents operation when no related objects already exist. Thanks to Vadim Sikora for the fix.
#79: Use .sortedm2m-item selector in the widget's JavaScript code to target the list items. This was previously ul.sortedm2m li. This improves compatibility other markup that does not want to use ul/li tags. Thanks to Michal Dabski for the patch.
Note: If you use custom markup with the JavaScript code, you need to make sure that the items now have the sortedm2m-item class name.
#76: Add support for to_field_name to SortedMultipleChoiceField. Thanks to Conrad Kramer for the patch.
- #75: Fix "add another" admin popup. It didn't refresh the list of items in Django 1.8+. Thanks to Vadim Sikora for the patch.
- skipped
- Dropping Python 3.2 support. It has reached end of life in February 2016.
- #71: Don't break collectstatic for some cases. Therefore we removed the
STATIC_URL prefix from the form media definition in
SortedCheckboxSelectMultiple
. Thanks to Kirill Ermolov for the patch.
- #70: CSS fix for Django 1.9 new admin design. Thanks to Maarten Draijer for the patch.
- #59, #65, #68: Django 1.9 support. Thanks to Scott Kyle and Jasper Maes for patches.
- #67: Support for disabling migrations for some models, that can be
decided by Django's DB router (with the
allow_migrate_model
method). Thanks to @hstanev for the patch.
- #56: Fix bug where order is wrong after adding objects. That had to do
with using the
count
of the m2m objects for the nextsort_value
value. We now use the corretMax
aggregation to make sure that newly added objects will be in order. Thanks to Scott Kyle for the report and patch.
- Performance fix for sorted m2m admin widget. See #54 for details. Thanks to Jonathan Liuti for fixing this.
- Hooray, we officially declare django-sortedm2m to be stable and promise to be backwards compatible to new releases (we already doing good since since the beginning in that regard).
- Django 1.8 support for
AlterSortedManyToManyField
operation. Thanks to Nicolas Trésegnie for starting the implementation.
- The creation of the sortedm2m intermediate model and database table is now
fully done inside of the
SortedManyToManyField
class. That makes it much easier to modify the creation of this when creating a custom subclass of this field. See #49 for an example usecase. - Adding support for the custom field arguments like
sorted
andsort_value_field_name
in Django 1.7 migrations. Thanks to Christian Kohlstedde for the patch.
- Fixing
setup.py
when run on a system that does not use UTF-8 as default encoding. See #48 for details. Thanks to Richard Mitchell for the patch.
- Fix:
SortedMultipleChoiceField
did not properly report changes of the data toForm.changed_data
. Thanks to @smcoll for the patch.
- Fix:
AlterSortedManyToManyField
operation failed for postgres databases. - Testing against MySQL databases.
- Fix:
AlterSortedManyToManyField
operation failed for many to many fields which already contained some data.
- Fix: When using the sortable admin widget, deselecting an item in the list had not effect. Thank you to madEng84 for the report and patch!
- Adding
AlterSortedManyToManyField
migration operation that allows you to migrate fromManyToManyField
toSortedManyToManyField
and vice versa. Thanks to Joaquín Pérez for the patch! - Fix: Supporting migrations in Django 1.7.4.
- Fix: The admin widget is not broken anymore for dynamically added inline forms. Thanks to Rubén Díaz for the patch!
- Adding support for Django 1.7 migrations. Thanks to Patryk Hes and Richard Barran for their reports.
- Adding czech translations. Thanks to @cuchac for the pull request.
- Adding support for Django 1.7 and dropping support for Django 1.4.
- Adding support for
prefetch_related()
. Thanks to Marcin Ossowski for the idea and patch.
- Correct escaping of for attribute in label for the sortedm2m widget. Thanks to Mystic-Mirage for the report and fix.
- Python 3 support!
- Better widget. Thanks to Mike Knoop for the initial patch.
- Django 1.5 support. Thanks to Antti Kaihola for the patches.
- Dropping Django 1.3 support. Please use django-sortedm2m<0.5 if you need to use Django 1.3.
- Adding support for a
sort_value_field_name
argument inSortedManyToManyField
. Thanks to Trey Hunner for the idea.
- Django 1.4 support. Thanks to Flavio Curella for the patch.
- south support is only enabled if south is actually in your INSTALLED_APPS setting. Thanks to tcmb for the report and Florian Ilgenfritz for the patch.
- South support (via monkeypatching, but anyway... it's there!). Thanks to
Chris Church for the patch. South migrations won't pick up a changed
sorted
argument though.
- Use already included jQuery version in global scope and don't override with django's version. Thank you to Hendrik van der Linde for reporting this issue.
- Fixed packaging error.
- Heavy internal refactorings. These were necessary to solve a problem with
SortedManyToManyField
and a reference to'self'
.
- Forgot to exclude debug print/console.log statements from code. Sorry.
- Fixing problems with
SortedCheckboxSelectMultiple
widget, especially in admin where a "create and add another item" popup is available.
- Fixing issue with primary keys instead of model instances for
.add()
and.remove()
methods inSortedRelatedManager
.
- Fixing validation error for
SortedCheckboxSelectMultiple
. It caused errors if only one value was passed.
- Removed unnecessary reference of jquery ui css file in
SortedCheckboxSelectMultiple
. Thanks to Klaas van Schelven and Yuwei Yu for the hint.
- Added a widget for use in admin.