Merge pull request #166 from sushifan/save-only-order-field
Only update the order field when saving objects; omit unnecessary db queriesmaster
commit
0d92d5c1a1
|
|
@ -297,8 +297,11 @@ class SortableAdmin(SortableAdminBase, ModelAdmin):
|
||||||
|
|
||||||
for index in indexes:
|
for index in indexes:
|
||||||
obj = objects_dict.get(index)
|
obj = objects_dict.get(index)
|
||||||
|
# perform the update only if the order field has changed
|
||||||
|
if getattr(obj, order_field_name) != start_index:
|
||||||
setattr(obj, order_field_name, start_index)
|
setattr(obj, order_field_name, start_index)
|
||||||
obj.save()
|
# only update the object's order field
|
||||||
|
obj.save(update_fields=(order_field_name,))
|
||||||
start_index += step
|
start_index += step
|
||||||
response = {'objects_sorted': True}
|
response = {'objects_sorted': True}
|
||||||
except (KeyError, IndexError, klass.DoesNotExist,
|
except (KeyError, IndexError, klass.DoesNotExist,
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue