django-datatables-view
Django datatables view
What it is and what it does
django-datatables-view is a Django view base class that bridges your Django models and the DataTables JavaScript library, handling the server-side logic that DataTables expects when configured for server-side processing. It abstracts away the boilerplate of parsing DataTables' sorting and filtering parameters, building filtered querysets, and returning properly formatted JSON responses.
You inherit from BaseDatatableView, define your model and columns, override a few methods to customize filtering and rendering, and wire it into your URL configuration. The view then handles pagination, sorting by column, global search, and custom filtering—all the mechanics that would otherwise require manual request parameter parsing and queryset manipulation. It's designed for tables with large datasets where client-side processing would be inefficient.
Use it for:
- Display large database tables in Django templates with server-side sorting and filtering to avoid loading all records into the browser.
- Build admin-like data grids where users can search and sort without page reloads, backed by a Django ORM queryset.
- Implement custom column rendering (e.g., formatted dates, HTML links) while maintaining DataTables' sorting and filtering.
- Protect against denial-of-service attacks by limiting the number of records returned per request using max_display_length.
- Add role-based row filtering by overriding filter_queryset to apply user-specific permissions before DataTables processes the data.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Provides a Django view base class that handles server-side processing for DataTables, managing sorting, filtering, and JSON output generation.
No—the package is abandoned (last release 2022-04-05, no recorded commits since). While it carries no known vulnerabilities and has low install friction, the lack of maintenance means it will not receive bug fixes, security patches, or updates for newer Django or DataTables versions. Consider a maintained alternative or fork if you need server-side DataTables integration.
Install
django-datatables-view on PyPI
pip
pip install django-datatables-viewuv
uv add django-datatables-viewpoetry
poetry add django-datatables-viewInstalling django-datatables-view
Before you install
Low install friction with a single runtime dependency on django. However, the package is abandoned—last release was 2022-04-05 and no commits have been recorded since. Use only if you can maintain it yourself or are confident it works with your Django version.
License in practice
MIT license is permissive and poses no restrictions on use, modification, or distribution in commercial or private projects.
Quickstart
pip install django-datatables-view
from django_datatables_view.base_datatable_view import BaseDatatableView
class MyTableJson(BaseDatatableView):
model = MyModel
columns = ['field1', 'field2']
order_columns = ['field1', 'field2']
Requires Django to be installed. Designed for DataTables 1.9.x and 1.10.x; compatibility with newer DataTables versions is not documented.
Verify before relying
- Compatibility with DataTables versions released after 1.10.x
- Whether the package works with modern Django versions (5.0+)
- Active community support or alternative maintained forks
Package facts
| License | MIT (permissive) |
| Python support | supports the current Python release (>=3.6) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 1 — django |
| Maintenance | abandoned — 1,592 days since the last release |
| First released | |
| Downloads | 167,228/month — #10,476 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: django_datatables_view-1.20.0-py3-none-any.whl
Keywords: django, datatables
Tags
More Dynamic Content packages
MarkupSafe provides a text object that escapes…
permissive · top 100 on PyPI
Jinja2Jinja2 is a templating engine that renders…
permissive · top 100 on PyPI
soupsieveSoupsieve is a CSS selector library designed to…
permissive · top 100 on PyPI
WerkzeugWerkzeug is a WSGI utility library providing…
permissive · top 1,000 on PyPI
FlaskFlask is a lightweight WSGI web application…
permissive · top 1,000 on PyPI
MakoMako compiles Python-embedded templates into…
permissive · top 1,000 on PyPI
dj-datatables-viewProvides a Django base view for server-side…
permissive · top 15,000 on PyPI
django-tables2django-tables2 generates HTML tables from…
permissive · top 5,000 on PyPI
django-htmxProvides Django integration utilities for htmx,…
permissive · top 5,000 on PyPI
djangorestframework-datatablesAdds server-side Datatables support to Django…
permissive · top 15,000 on PyPI
django-admin-list-filter-dropdownRenders Django admin list filters as dropdown…
permissive · top 5,000 on PyPI
djangorestframework-bulkAdds bulk create, update, and delete operations…
permissive · top 15,000 on PyPI
djangorestframework-filtersExtends Django REST Framework with advanced…
permissive · top 15,000 on PyPI
django-filterDjango-filter adds dynamic QuerySet filtering…
permissive · top 5,000 on PyPI
djangoqlDjangoQL provides an advanced search query…
permissive · top 15,000 on PyPI
django-queryset-csvExports Django QuerySet data to CSV format with…
copyleft · top 15,000 on PyPI