Skip to main content

This library is aimed to simplify creation of user sorted lists.

Project description

About
----

This library is aimed to simplify creation of user sorted lists.
Inspired by https://gist.github.com/piquadrat/3833430

Installation
----

1. Install with pip or setup.py

2. Add ordered_listview into `INSTALLED_APPS`. ::

INSTALLED_APPS += ['ordered__listview']

3. Add template tags lib into builtins. ::

add_to_builtins('ordered_listview.templatetags.ordered_listview') // Or load with {% load ordered_listview %}

4. Inherit your view from `OrderedListView`. And setup your ordering fields. ::

from ordered_listview import OrderedListView

class UserListView(OrderedListView):
allowed_order_by = [
('username', _('Login')),
('userfile__file__size', _('Size')),
('date_joined', _('Sing up date'))
]
default_order_by = 'created'

5. Add a tag into you your template. ::

{% include "ordered_listview/fields.html" %}


Customization
----

1. To change get attribute name, just set `OrderedListView.order_by` attribute ::

class UserListView(OrderedListView):
order_by = "order_by"

2. If you need to provide your own template create inside your `templates`
`ordered_listview` directory with `fields.html` and `field.html` in.

fields.html - list of sortable fields
field.html - order field and state template

3. If you want to ignore null values during sort, add fields to null_ignore_fields.

class UserListView(OrderedListView):
null_ignore_fields = ['quantity']


class UserListView(OrderedListView):
null_ignore_fields = '*' # For all fields

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django-ordered-listview-0.0.2.tar.gz (2.3 kB view details)

Uploaded Source

File details

Details for the file django-ordered-listview-0.0.2.tar.gz.

File metadata

File hashes

Hashes for django-ordered-listview-0.0.2.tar.gz
Algorithm Hash digest
SHA256 4ede323c9a2a045c123ea30520effa00340aee7b27f60189d950ad894aa262b4
MD5 eec00bbfae246b67d120f2dab32b29ce
BLAKE2b-256 c347374dabe0f36a1f0cee05a153ba440dd0903d952d0973d98b528712cad59d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page