diff --git a/adminsortable/admin.py b/adminsortable/admin.py index ee92501..2991f5c 100644 --- a/adminsortable/admin.py +++ b/adminsortable/admin.py @@ -297,9 +297,11 @@ class SortableAdmin(SortableAdminBase, ModelAdmin): for index in indexes: obj = objects_dict.get(index) - setattr(obj, order_field_name, start_index) - # only update the object's order field - obj.save(update_fields=(order_field_name,)) + # perform the update iff the order field has changed + if getattr(obj, order_field_name) != start_index: + setattr(obj, order_field_name, start_index) + # only update the object's order field + obj.save(update_fields=(order_field_name,)) start_index += step response = {'objects_sorted': True} except (KeyError, IndexError, klass.DoesNotExist,