Library for creating HTML listing / table / data grid
Django app for building HTML listings / tables, it includes many features :
- Any iterable, Django QuerySet or model can be used.
- Most listings can be configured into a template file without touching a python file
- A class-based ListingView is provided if you want to code a listing at python side
- It as an Ajax mode to save requests to the server
- Uses JQuery if ajax is activated
- Customized for Bootstrap by default, but can be easily customized in many way (templates, icons, etc…)
- You can select columns to display, columns title, default sorting etc..
- Pagination is highly customizable (buttons to display, goto page, ellipsis, icons et labels)
- Rows can be <div> instead of <tr>, so it is possible to format data in many ways
- A lot of column types are provided, they are automatically created when a QuerySet or a model is provided
- Columns are class-bases and one can create custom ones
- Columns manage One-to-many, Many-to-many and foreign relations
- Provides aggregation columns : sum, avg, min, max values
- Provides page-level and global aggregation : sum, avg, min, max values displayed at listing last row
- Provides columns to make a link to the object, a custom link, checkbox, select box, text input…
- Provides “action column” that comes with many actions : show, edit, delete, move up, move down…
- is able to manage multiple variations to present data in multiple way at the same place (text only listing, text+image listing, image only listing for example)
- Uses Django translation framework : one can translate the listing as needed
- Toolbars can be added at the top and/or at the bottom to make actions
- Built-in toolbar action are : sorting, select a listing variation, number of rows per page, export data. They are customizable.
- Toolbar items are class-based : one can create a custom one easily
- django-listing can automatically create a filter form (aka search form)
- Listing rows can be selectable in order to apply some actions
- Listings can be editable for mass updates
- django-listing can automatically create a form for inserting data to database
- One can upload files/images into a listing, it uses DropzoneJS (Work in progress)
- ListingView can manage itself database inserting, editing, deleting, filtering, uploads and actions : no need to develop any code for that.
- django-listing comes with hundreds of icons as a scalable font
- django-listing is faster than django-table2
If you have docker you can run the demo with this command:
docker run -p 8123:8123 elapouya/django-listing-demo
And then open your browser at this url : http://localhost:8123
To install docker on Linux, just use this command:
curl -sSL https://get.docker.com/ | sh
Otherwise, you can upload from here : https://docs.docker.com/get-docker/
The demo code is available on github here : django-listing-demo
Django-listing is licensed under the GPLv3 license for all open source applications. A commercial license is required for all commercial applications or non-open applications
See LICENSE.rst file for more informations.
Please, read the doc (Work in progress)
- First running version
- Skeleton commit
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
|Filename, size||File type||Python version||Upload date||Hashes|
|Filename, size django_listing-0.0.8-py2.py3-none-any.whl (314.2 kB)||File type Wheel||Python version py2.py3||Upload date||Hashes View|
|Filename, size django-listing-0.0.8.tar.gz (293.0 kB)||File type Source||Python version None||Upload date||Hashes View|
Hashes for django_listing-0.0.8-py2.py3-none-any.whl