Open-Source
library for Django that provides a powerful data table interface
(paginated information) with minimum effort - actively supported by App-Generator.
- Django Dynamic DataTables - video presentation
For a complete set of features and long-term support, check out Dynamic Django, a powerful starter that incorporates:
- Dynamic DataTables: using a single line of configuration, the data saved in any table is automatically managed
- Dynamic API: any model can become a secure API Endpoint using DRF
- Dynamic Charts: extract relevant charts without coding all major types are supported
- CSV Loader: translate CSV files into Django Models and (optional) load the information
- Powerful CLI Tools for the GIT interface, configuration editing, updating the configuration and database (create models, migrate DB)
Features
- Modern Stack:
Django
&VanillaJS
DT
layer provided by Simple-DataTablesServer-side
pagination- Search, Filters
- Exports in PDF, CSV formats
MIT License
(commercial use allowed)
Step #1 -
Install the package
$ pip install django-dynamic-datatb
// OR
$ pip install git+https://github.com/app-generator/django-dynamic-datatb.git
Step #2 - Update Configuration,
add new imports
import os, inspect
import django_dyn_dt
Step #3 - Update Configuration,
include the new APPs
INSTALLED_APPS = [
'django_dyn_dt', # <-- NEW App
]
Step #4 - Update Configuration, include the new
TEMPLATES
DIR
TEMPLATE_DIR_DATATB = os.path.join(BASE_DIR, "django_dyn_dt/templates") # <-- NEW App
TEMPLATES = [
{
"BACKEND": "django.template.backends.django.DjangoTemplates",
"DIRS": [TEMPLATE_DIR_DATATB], # <-- NEW Include
"APP_DIRS": True,
"OPTIONS": {
},
},
]
Step #5 - Update Configuration, update
STATICFILES_DIRS
DIR
DYN_DB_PKG_ROOT = os.path.dirname( inspect.getfile( django_dyn_dt ) ) # <-- NEW App
STATICFILES_DIRS = (
os.path.join(DYN_DB_PKG_ROOT, "templates/static"),
)
Step #6 -
Register the model
insettings.py
(DYNAMIC_DATATB section)
This sample code assumes that app1
exists and model Book
is defined and migrated.
DYNAMIC_DATATB = {
# SLUG -> Import_PATH
'books' : "app1.models.Book",
}
Step #7 -
Update routing
, include APIs
from django.contrib import admin
from django.urls import path, include # <-- NEW: 'include` directive added
urlpatterns = [
path("admin/", admin.site.urls),
path('', include('django_dyn_dt.urls')), # <-- NEW: API routing rules
]
Step #8 - Use the Dynamic Datatable module
If the managed model is Books
, the dynamic interface is /datatb/books/
and all features available.
- DRF - HOMEpage
- More Developer Tools provided by
AppSeed
- Ask for Support via
Email
&Discord
Django Dynamic DataTables - Open-source library provided by App-Generator