Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Sorting for Django. Yo.
Python
Branch: master
Failed to load latest commit information.
sorting Pep8 compliant
sortingtest Modified tests
.gitignore Gitignore
.travis.yml Added travis
LICENSE Update LICENSE
README.md Added Travis status image
ez_setup.py Setup and Pypi
requirements.txt Added Requirements.txt
setup.py Setup and Pypi

README.md

Django-sorting

Build Status

django-sorting is a pluggable app in the spirit of django-pagination.

It allows you to allow sorting on querysets, without handling them in views.

Usage:

Inlude sorting in your INSTALLED_APPS

Put {% load sorting %} at top of your templates.

Your templates have two new tags available.

auto_sort sort_link

The basic usage is.::

{% sort_link "link text" "field_name" %}
{% auto_sort queryset %}

sort_link:

The basic usage is.::

{% sort_link "link text" "field_name" %}

Sort link outputs a link which will sort on the given field. The field to sort on should be a database field, or something which .order_by of queryset would work.

Example usage.::

{% sort_link "Name" "name" %}

It may also be used as.

{% sort_link "link text" "field_name" "vis_name" %}

{% sort_link "Name" "name" "what" %}

This is useful if you do not wnat to expose your database fields in urls.

auto_sort:

Basic usage is.::

{% auto_sort queryset %}

It sorts the queryset in place and replaces the queryset by the sorted queryset.

This needs to be called prior to a slice has been taken from a queryset. (Ordering can not be done after the slice has been taken.) In particular this will not work with generuc view object_list.

License:

This code is available under a GPL or a BSD license.

History:

There is a well used Django sorting library at http://github.com/directeur/django-sorting . So why another? Well, I had this library written before I was aware of this library. :) The libraries are fairly close in functionality. But I think mine is better in two ways. :)

  1. It doesnt use a middleware
  2. It allows setting a visible name which is independent of the database field.
Something went wrong with that request. Please try again.