2014-08-21 00:47:13 +00:00
<!DOCTYPE html>
<!-- [if IE 8]><html class="no - js lt - ie9" lang="en" > <![endif] -->
<!-- [if gt IE 8]><! --> < html class = "no-js" lang = "en" > <!-- <![endif] -->
< head >
< meta charset = "utf-8" >
< meta name = "viewport" content = "width=device-width, initial-scale=1.0" >
< title > Quickstart — Django Admin Sortable 1.7.0 documentation< / title >
< link href = 'https://fonts.googleapis.com/css?family=Lato:400,700,400italic,700italic|Roboto+Slab:400,700|Inconsolata:400,700' rel = 'stylesheet' type = 'text/css' >
< link rel = "stylesheet" href = "_static/css/theme.css" type = "text/css" / >
< link rel = "top" title = "Django Admin Sortable 1.7.0 documentation" href = "index.html" / >
< link rel = "prev" title = "Welcome to Django Admin Sortable’ s documentation!" href = "index.html" / >
< script src = "https://cdnjs.cloudflare.com/ajax/libs/modernizr/2.6.2/modernizr.min.js" > < / script >
< / head >
< body class = "wy-body-for-nav" role = "document" >
< div class = "wy-grid-for-nav" >
< nav data-toggle = "wy-nav-shift" class = "wy-nav-side" >
< div class = "wy-side-nav-search" >
< a href = "index.html" class = "fa fa-home" > Django Admin Sortable< / a >
< div role = "search" >
< form id = "rtd-search-form" class = "wy-form" action = "search.html" method = "get" >
< input type = "text" name = "q" placeholder = "Search docs" / >
< input type = "hidden" name = "check_keywords" value = "yes" / >
< input type = "hidden" name = "area" value = "default" / >
< / form >
< / div >
< / div >
< div class = "wy-menu wy-menu-vertical" data-spy = "affix" role = "navigation" aria-label = "main navigation" >
< ul class = "current" >
< li class = "toctree-l1 current" > < a class = "current reference internal" href = "" > Quickstart< / a > < / li >
< / ul >
< / div >
< / nav >
< section data-toggle = "wy-nav-shift" class = "wy-nav-content-wrap" >
< nav class = "wy-nav-top" role = "navigation" aria-label = "top navigation" >
< i data-toggle = "wy-nav-top" class = "fa fa-bars" > < / i >
< a href = "index.html" > Django Admin Sortable< / a >
< / nav >
< div class = "wy-nav-content" >
< div class = "rst-content" >
< div role = "navigation" aria-label = "breadcrumbs navigation" >
< ul class = "wy-breadcrumbs" >
< li > < a href = "index.html" > Docs< / a > » < / li >
< li > Quickstart< / li >
< li class = "wy-breadcrumbs-aside" >
< a href = "_sources/quickstart.txt" rel = "nofollow" > View page source< / a >
< / li >
< / ul >
< hr / >
< / div >
< div role = "main" class = "document" >
< div class = "section" id = "quickstart" >
< h1 > Quickstart< a class = "headerlink" href = "#quickstart" title = "Permalink to this headline" > ¶< / a > < / h1 >
< p > To get started using < code class = "docutils literal" > < span class = "pre" > django-admin-sortable< / span > < / code > simply install it using < code class = "docutils literal" > < span class = "pre" > pip< / span > < / code > :< / p >
< div class = "highlight-python" > < div class = "highlight" > < pre > $ pip install django-admin-sortable
< / pre > < / div >
< / div >
< p > Add < code class = "docutils literal" > < span class = "pre" > adminsortable< / span > < / code > to your project’ s < code class = "docutils literal" > < span class = "pre" > INSTALLED_APPS< / span > < / code > setting.< / p >
< p > Ensure < code class = "docutils literal" > < span class = "pre" > django.core.context_processors.static< / span > < / code > is in your < code class = "docutils literal" > < span class = "pre" > TEMPLATE_CONTEXT_PROCESSORS< / span > < / code > setting.< / p >
2014-08-21 03:34:31 +00:00
< p > Define your model, inheriting from < code class = "docutils literal" > < span class = "pre" > adminsortable.Sortable< / span > < / code > :< / p >
< div class = "highlight-python" > < div class = "highlight" > < pre > < span class = "c" > # models.py< / span >
< span class = "kn" > from< / span > < span class = "nn" > adminsortable.models< / span > < span class = "kn" > import< / span > < span class = "n" > Sortable< / span >
< span class = "k" > class< / span > < span class = "nc" > MySortableClass< / span > < span class = "p" > (< / span > < span class = "n" > Sortable< / span > < span class = "p" > ):< / span >
< span class = "k" > class< / span > < span class = "nc" > Meta< / span > < span class = "p" > (< / span > < span class = "n" > Sortable< / span > < span class = "o" > .< / span > < span class = "n" > Meta< / span > < span class = "p" > ):< / span >
< span class = "k" > pass< / span >
< span class = "n" > title< / span > < span class = "o" > =< / span > < span class = "n" > models< / span > < span class = "o" > .< / span > < span class = "n" > CharField< / span > < span class = "p" > (< / span > < span class = "n" > max_length< / span > < span class = "o" > =< / span > < span class = "mi" > 50< / span > < span class = "p" > )< / span >
< span class = "k" > def< / span > < span class = "nf" > __unicode__< / span > < span class = "p" > (< / span > < span class = "bp" > self< / span > < span class = "p" > ):< / span >
< span class = "k" > return< / span > < span class = "bp" > self< / span > < span class = "o" > .< / span > < span class = "n" > title< / span >
< / pre > < / div >
< / div >
< p > Wire up your sortable model to Django admin:< / p >
< div class = "highlight-python" > < div class = "highlight" > < pre > < span class = "c" > # admin.py< / span >
< span class = "kn" > from< / span > < span class = "nn" > adminsortable.admin< / span > < span class = "kn" > import< / span > < span class = "n" > SortableAdmin< / span >
< span class = "kn" > from< / span > < span class = "nn" > .models< / span > < span class = "kn" > import< / span > < span class = "n" > MySortableClass< / span >
< span class = "k" > class< / span > < span class = "nc" > MySortableAdminClass< / span > < span class = "p" > (< / span > < span class = "n" > SortableAdmin< / span > < span class = "p" > ):< / span >
< span class = "sd" > " " " Any admin options you need go here" " " < / span >
< span class = "n" > admin< / span > < span class = "o" > .< / span > < span class = "n" > site< / span > < span class = "o" > .< / span > < span class = "n" > register< / span > < span class = "p" > (< / span > < span class = "n" > MySortableClass< / span > < span class = "p" > ,< / span > < span class = "n" > MySortableAdminClass< / span > < span class = "p" > )< / span >
< / pre > < / div >
< / div >
< p > Your model’ s ChangeList view should now have an extra tool link when there are 2 or more objects present that will take you to a view where you can drag-and-drop the objects into your desired order.< / p >
2014-08-21 00:47:13 +00:00
< / div >
< / div >
< footer >
< div class = "rst-footer-buttons" role = "navigation" aria-label = "footer navigation" >
< a href = "index.html" class = "btn btn-neutral" title = "Welcome to Django Admin Sortable’ s documentation!" > < span class = "fa fa-arrow-circle-left" > < / span > Previous< / a >
< / div >
< hr / >
< div role = "contentinfo" >
< p >
© Copyright 2014, Brandon Taylor.
< / p >
< / div >
< a href = "https://github.com/snide/sphinx_rtd_theme" > Sphinx theme< / a > provided by < a href = "https://readthedocs.org" > Read the Docs< / a >
< / footer >
< / div >
< / div >
< / section >
< / div >
< script type = "text/javascript" >
var DOCUMENTATION_OPTIONS = {
URL_ROOT:'./',
VERSION:'1.7.0',
COLLAPSE_INDEX:false,
FILE_SUFFIX:'.html',
HAS_SOURCE: true
};
< / script >
< script type = "text/javascript" src = "_static/jquery.js" > < / script >
< script type = "text/javascript" src = "_static/underscore.js" > < / script >
< script type = "text/javascript" src = "_static/doctools.js" > < / script >
< script type = "text/javascript" src = "_static/js/theme.js" > < / script >
< script type = "text/javascript" >
jQuery(function () {
SphinxRtdTheme.StickyNav.enable();
});
< / script >
< / body >
< / html >