app-generator / django-dynamic-datatb

Django Dynamic Datatables - Open-Source Library | AppSeed
https://pypi.org/project/django-dynamic-datatb/
MIT License
43 stars 19 forks source link
datatable datatable-django datatable-dynamic datatable-generator datatables datatables-serverside django django-and-datatables django-datatables django-generator django-tables dynamic-programming free-django-sample generator-dt open-source pypi-package

Django Dynamic DataTables

Open-Source library for Django that provides a powerful data table interface (paginated information) with minimum effort - actively supported by AppSeed.


Features


Django Dynamic DataTables - Open-Source tool provided by AppSeed.


How to use it


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 in settings.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.


Django Dynamic DataTables - Open-Source Tool for Developers.


Links & resources



Django Dynamic DataTables - Open-source library provided by AppSeed