Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/claudiob/django-sortable
Drag'n'drop support to reorder objects in the Django admin panel, both with and without Grappelli
https://github.com/claudiob/django-sortable
Last synced: 17 days ago
JSON representation
Drag'n'drop support to reorder objects in the Django admin panel, both with and without Grappelli
- Host: GitHub
- URL: https://github.com/claudiob/django-sortable
- Owner: claudiob
- License: mit
- Created: 2011-06-14T18:36:57.000Z (over 13 years ago)
- Default Branch: master
- Last Pushed: 2011-04-28T00:17:52.000Z (over 13 years ago)
- Last Synced: 2024-12-18T13:36:25.388Z (21 days ago)
- Language: JavaScript
- Homepage:
- Size: 817 KB
- Stars: 0
- Watchers: 3
- Forks: 12
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Quick start guide
## Download
Using `pip`:
pip install sortable
Using `git`:
git clone git://github.com/ff0000/django-sortable.git
cd django-sortable
python setup.py installor download the package from [github.com/ff0000/django-sortable](https://github.com/ff0000/django-sortable).
## Installation
Open `settings.py` and add `sortable` to your `INSTALLED_APPS`:
INSTALLED_APPS = (
[...],
'sortable',
)Copy the reorder Javascript the `static/js` folder:
cp [sortable folder]/sortable/static/js/django-admin-sortable.js [django-app]/static/js/
## Reordering instances of a model with drag-and-drop in the admin
To add the sortable feature a model called `Article` do the following:
Edit `app/articles/models.py` changing `models.Model` with `Sortable`:
from sortable.models import Sortable
class Article(Sortable):
# here the model fields, Meta, etc.If `Meta` is present, inherit from `Sortable.Meta`:
# Old version
class Meta:
# New version
class Meta(Sortable.Meta):Edit `app/articles/admin.py` changing `admin.ModelAdmin` with `SortableAdmin`:
from sortable.admin import SortableAdmin
class ArticleAdmin(SortableAdmin):
# here the admin stuffIf `ArticleAdmin` includes the `list_display` declaration, change it like this:
# Old version
list_display = ('__unicode__', ...,)
# New version
list_display_links = ('__unicode__', )
list_display = SortableAdmin.list_display + ('__unicode__', ...,)The `list_display_links` indicates which field will show the admin detail page when clicked.