diff --git a/adminsortable/admin.py b/adminsortable/admin.py
index 897c91a..4f6c2b0 100644
--- a/adminsortable/admin.py
+++ b/adminsortable/admin.py
@@ -113,16 +113,18 @@ class SortableAdmin(ModelAdmin):
if request.is_ajax() and request.method == 'POST':
try:
- indexes = request.POST.get('indexes', []).split(',')
+ indexes = map(str, request.POST.get('indexes', []).split(','))
klass = ContentType.objects.get(id=model_type_id).model_class()
- objects_dict = dict([(obj.pk, obj) for obj in klass.objects.filter(pk__in=indexes)])
- min_index = min(objects_dict.values(), key=lambda x: getattr(x, 'order'))
- min_index = getattr(min_index, 'order') or 0
+ objects_dict = dict([(str(obj.pk), obj) for obj in klass.objects.filter(pk__in=indexes)])
+ lowest_ordered_object = min(objects_dict.values(), key=lambda x: getattr(x, 'order'))
+ min_index = getattr(lowest_ordered_object, 'order') or 0
+
for index in indexes:
- obj = objects_dict[int(index)]
+ obj = objects_dict.get(index)
setattr(obj, 'order', min_index)
obj.save()
min_index += 1
+
response = {'objects_sorted' : True}
except (IndexError, klass.DoesNotExist, AttributeError):
pass
diff --git a/adminsortable/templates/adminsortable/shared/javascript_includes.html b/adminsortable/templates/adminsortable/shared/javascript_includes.html
index fb347bd..e1b058d 100644
--- a/adminsortable/templates/adminsortable/shared/javascript_includes.html
+++ b/adminsortable/templates/adminsortable/shared/javascript_includes.html
@@ -1,4 +1,5 @@
-
+
+
diff --git a/adminsortable/templatetags/adminsortable_tags.py b/adminsortable/templatetags/adminsortable_tags.py
index 0f6ebd2..ca53798 100644
--- a/adminsortable/templatetags/adminsortable_tags.py
+++ b/adminsortable/templatetags/adminsortable_tags.py
@@ -24,5 +24,4 @@ def render_list_items(context, list_objects):
@register.inclusion_tag('adminsortable/shared/object_rep.html', takes_context=True)
def render_object_rep(context, object):
- print object
return {'object' : object}
diff --git a/sample_project/adminsortable.sqlite b/sample_project/adminsortable.sqlite
index a3ce8f9..76183e1 100644
Binary files a/sample_project/adminsortable.sqlite and b/sample_project/adminsortable.sqlite differ