sqlalchemy-datatables is a framework agnostic library providing an SQLAlchemy integration of jQuery DataTables >= 1.10, and helping you manage server side requests in your application.
Installation
To install via pip:
Python 3
$ pip3 install sqlalchemy-datatables
To install from source:
$ git clone git@github.com:Pegase745/sqlalchemy-datatables.git $ cd sqlalchemy-datatables $ pip3 install .
To contribute:
In a virtualenv
$ git clone git@github.com:Pegase745/sqlalchemy-datatables.git
$ cd sqlalchemy-datatables
$ make allUsage
@view_config(route_name='data', renderer='json') def data(request): """Return server side data.""" # defining columns # - explicitly cast date to string, so string searching the date # will search a date formatted equal to how it is presented # in the table columns = [ ColumnDT(User.id), ColumnDT(User.name), ColumnDT(Address.description), ColumnDT(func.strftime('%d-%m-%Y', User.birthday)), ColumnDT(User.age) ] # defining the initial query depending on your purpose # - don't include any columns # - if you need a join, also include a 'select_from' query = DBSession.query().\ select_from(User).\ join(Address).\ filter(Address.id > 4) # instantiating a DataTable for the query and table needed rowTable = DataTables(request.GET, query, columns) # returns what is needed by DataTable return rowTable.output_result()
Examples
You can find working examples in the repository, including an integration with the yadcf plugin:
Changelog
All notable changes to this project will be documented in this section.
This project adheres to Semantic Versioning and Keep A Changelog.
License
The project is licensed under the MIT license.