django-admin-sortable2
Generic drag-and-drop sorting for the List, the Stacked- and the Tabular-Inlines Views in the Django Admin
What it is and what it does
django-admin-sortable2 is a Django package that integrates drag-and-drop reordering into the Django Admin interface. It provides mixin classes that can be added to any existing ModelAdmin, StackedInline, or TabularInline class without requiring changes to your models themselves. The package uses Sortable.JS on the client side and supports dragging multiple items at once.
You simply inherit from the appropriate mixin class alongside your existing admin class, and the reordering UI appears automatically in the admin list and inline views. The package is designed to integrate with existing models and admin configurations with minimal friction, making it straightforward to add ordering capability to any Django project.
Use it for:
- Reorder product listings or menu items in a Django admin interface without writing custom JavaScript
- Allow administrators to drag multiple related items (e.g., inline form entries) to set their display order
- Add sortable columns to existing admin list views without modifying model definitions
- Implement drag-and-drop ordering for hierarchical or nested admin inlines
- Enable quick reordering of featured items or priority-based content in the admin UI
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Adds drag-and-drop reordering of model instances directly in Django Admin's List, Stacked Inline, and Tabular Inline views through simple mixin classes.
Yes. The package is actively maintained, supports current Django and Python versions, has no known vulnerabilities, and adds a common admin feature with minimal install friction and a permissive license. It integrates cleanly via mixins without requiring model changes, making it a low-risk addition to existing Django projects.
Install
django-admin-sortable2 on PyPI
pip
pip install django-admin-sortable2uv
uv add django-admin-sortable2poetry
poetry add django-admin-sortable2Installing django-admin-sortable2
Before you install
Low install friction with a single runtime dependency on Django. The package is actively maintained with a recent commit on 2026-07-06 and marked as Production/Stable, supporting Django 4.2 through 5.2 and Python 3.9 through 3.13.
License in practice
Licensed under MIT (permissive), so you can use, modify, and distribute this package with minimal legal restrictions; attribution to Jacob Rief and contributors is appreciated but not legally required.
Quickstart
pip install django-admin-sortable2
from django_admin_sortable2.admin import SortableAdminMixin
class MyModelAdmin(SortableAdminMixin, admin.ModelAdmin):
pass
admin.site.register(MyModel, MyModelAdmin)
Verify before relying
- Whether the package requires a specific ordering field on the model or handles it automatically
- What JavaScript library (Sortable.JS) version is bundled and whether it has known vulnerabilities
- Whether multiple-item drag-and-drop works across all Django versions listed (4.2–5.2)
Package facts
| License | MIT (permissive) |
| Python support | not specified |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 1 — Django |
| Maintenance | actively maintained — 204 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 1,412,069/month — #3,936 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: django_admin_sortable2-2.3.1-py3-none-any.whl
Keywords: django
Tags
More Python Modules packages
Converts domain names between Unicode and…
permissive · top 100 on PyPI
setuptoolsSetuptools is a Python build backend and…
permissive · top 100 on PyPI
PyYAMLPyYAML parses and emits YAML 1.1 data format,…
permissive · top 100 on PyPI
pydanticPydantic validates Python data structures…
permissive · top 100 on PyPI
annotated-typesProvides reusable metadata objects for use with…
permissive · top 100 on PyPI
typing-inspectionProvides runtime tools to inspect and…
permissive · top 100 on PyPI
django-ordered-modelAdds ordering and reordering capabilities to…
permissive · top 15,000 on PyPI
django-admin-extra-buttonsAdds custom buttons, links, and views to Django…
permissive · top 15,000 on PyPI
django-admin-inline-paginator-plusAdds pagination to Django admin inline forms,…
permissive · top 15,000 on PyPI
django-admin-inline-paginatorAdds pagination controls to Django admin inline…
permissive · top 5,000 on PyPI
django-markdownxDjango MarkdownX provides a Markdown editor…
permissive · top 15,000 on PyPI
django-nonrelated-inlinesProvides Django admin inline classes that let…
permissive · top 15,000 on PyPI
dj-materialized-viewsManages PostgreSQL materialized views through a…
permissive · top 15,000 on PyPI
django-reverse-adminAdds reverse inline support to Django admin for…
permissive · top 15,000 on PyPI
django-sortedm2mProvides a drop-in replacement for Django's…
permissive · top 15,000 on PyPI
django-admin-data-viewsAdds custom data views to the Django admin…
permissive · top 15,000 on PyPI