Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: app-generator/django-dynamic-datatb
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v1.0.8
Choose a base ref
...
head repository: app-generator/django-dynamic-datatb
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: main
Choose a head ref
  • 10 commits
  • 6 files changed
  • 2 contributors

Commits on Feb 15, 2023

  1. Release v1.0.9

    app-generator committed Feb 15, 2023
    Copy the full SHA
    b3143c9 View commit details
  2. Release v1.0.10

    app-generator committed Feb 15, 2023
    Copy the full SHA
    2fefb9e View commit details
  3. Update setup.py

    app-generator committed Feb 15, 2023
    Copy the full SHA
    98dfb26 View commit details

Commits on Jun 28, 2023

  1. Copy the full SHA
    031d3d6 View commit details
  2. Copy the full SHA
    eba49e6 View commit details

Commits on Jul 3, 2023

  1. fix export issues

    mominur-helios committed Jul 3, 2023
    Copy the full SHA
    681df46 View commit details
  2. Merge pull request #13 from app-generator/export-issue

    fix export issues
    app-generator authored Jul 3, 2023
    Copy the full SHA
    aedd908 View commit details
  3. Copy the full SHA
    d1dbc72 View commit details

Commits on Oct 17, 2024

  1. v1.0.26 - Update RM

    app-generator committed Oct 17, 2024
    Copy the full SHA
    4a200eb View commit details
  2. Update publish.txt

    app-generator committed Oct 17, 2024
    Copy the full SHA
    db6022d View commit details
Showing with 59 additions and 18 deletions.
  1. +30 −0 CHANGELOG.md
  2. +18 −8 README.md
  3. +2 −2 django_dyn_dt/templates/static/src/controller/index.js
  4. +4 −5 django_dyn_dt/views.py
  5. +3 −1 publish.txt
  6. +2 −2 setup.py
30 changes: 30 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,35 @@
# Change Log

## [1.0.26] 2024-10-17
### Changes

- Update RM
- [Django Dynamic DataTables](https://app-generator.dev/docs/developer-tools/dynamic-datatables.html)
- Mention [Dynamic Django](https://app-generator.dev/docs/developer-tools/dynamic-django/index.html) Starter (commercial)

## [1.0.25] 2023-07-03
### Changes

- Fix the Exports
- PDF & CSV

## [1.0.24] 2023-06-28
### Changes

- Bump Version
- Remove `Widget Mode` (unstable release)
- Fallback to single page mode

## [1.0.10] 2023-02-15
### Changes

- DOCS Update (readme)

## [1.0.9] 2023-02-15
### Changes

- DOCS Update (readme)

## [1.0.8] 2023-02-15
### Changes

26 changes: 18 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,22 @@
# [Django Dynamic DataTables](https://appseed.us/developer-tools/django-dynamic-datatables/)
# [Django Dynamic DataTables](https://app-generator.dev/docs/developer-tools/dynamic-datatables.html)

`Open-Source` library for **Django** that provides a `powerful data table interface` (paginated information) with minimum effort - actively supported by [AppSeed](https://appseed.us/).
`Open-Source` library for **Django** that provides a `powerful data table interface` (paginated information) with minimum effort - actively supported by **[App-Generator](https://app-generator.dev/)**.

- [Django Dynamic Services](https://github.com/app-generator/django-dynamic-services) - `sample project that uses the library`
- Free [support](https://appseed.us/support/) via Email and Discord
- [Django Dynamic DataTables](https://www.youtube.com/watch?v=EtMCK5AmdQI) - video presentation

<br />
<br />

---

> For a **complete set of features** and long-term support, check out **[Dynamic Django](https://app-generator.dev/docs/developer-tools/dynamic-django/index.html)**, a powerful starter that incorporates:
- [Dynamic DataTables](https://app-generator.dev/docs/developer-tools/dynamic-django/datatables.html): using a single line of configuration, the data saved in any table is automatically managed
- [Dynamic API](https://app-generator.dev/docs/developer-tools/dynamic-django/api.html): any model can become a secure API Endpoint using DRF
- [Dynamic Charts](https://app-generator.dev/docs/developer-tools/dynamic-django/charts.html): extract relevant charts without coding all major types are supported
- [CSV Loader](https://app-generator.dev/docs/developer-tools/dynamic-django/csv-loader.html): translate CSV files into Django Models and (optional) load the information
- Powerful [CLI Tools](https://app-generator.dev/docs/developer-tools/dynamic-django/cli.html) for the GIT interface, configuration editing, updating the configuration and database (create models, migrate DB)

<br />

> Features
@@ -14,8 +25,7 @@
- `Server-side` pagination
- Search, Filters
- Exports in PDF, CSV formats
- `MIT License` (commercial use allowed)
- Active versioning & Free [support](https://appseed.us/support/)
- `MIT License` (commercial use allowed)

<br />

@@ -136,4 +146,4 @@ If the managed model is `Books`, the dynamic interface is `/datatb/books/` and a
<br />

---
[Django Dynamic DataTables](https://appseed.us/developer-tools/django-dynamic-datatables/) - Open-source library provided by **[AppSeed](https://appseed.us/)**
[Django Dynamic DataTables](https://app-generator.dev/docs/developer-tools/dynamic-datatables.html) - Open-source library provided by **[App-Generator](https://app-generator.dev/)**
4 changes: 2 additions & 2 deletions django_dyn_dt/templates/static/src/controller/index.js
Original file line number Diff line number Diff line change
@@ -211,8 +211,8 @@ export const exportController = (dataTable) => {
export const exportData = (dataTable, type) => {

const searchParam = new URLSearchParams(window.location.search).get('search') || ''

const hiddenColumns = myData.headings.filter((d,i) => !dataTable.columns.visible(i))
const hiddenColumns = myData.headings.filter((d,i) => !dataTable.columns().visible(i))

fetch (`/datatb/${modelName}/export/`,
{method: 'POST',body: JSON.stringify({
9 changes: 4 additions & 5 deletions django_dyn_dt/views.py
Original file line number Diff line number Diff line change
@@ -149,10 +149,9 @@ def export(request, **kwargs):
export_type = request_body.get('type', 'csv')
filter_options = Q()

headings = filter(lambda field: field.name not in hidden, _get_headings(model_class))
headings = list(headings)
headings = list(_get_headings(model_class))
for field in headings:
field_name = field.name
field_name = field
try:
filter_options = filter_options | Q(**{field_name + '__icontains': search_key})
except Exception as _:
@@ -163,12 +162,12 @@ def export(request, **kwargs):
for data in all_data:
this_row = []
for heading in headings:
this_row.append(getattr(data, heading.name))
this_row.append(getattr(data, heading))
table_data.append(this_row)

df = pd.DataFrame(
table_data,
columns=tuple(heading.name for heading in headings))
columns=tuple(heading for heading in headings))
if export_type == 'pdf':
base64encoded = get_pdf(df)
elif export_type == 'xlsx':
4 changes: 3 additions & 1 deletion publish.txt
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
python setup.py sdist ; twine check dist/*
python setup.py sdist

twine check dist/*

twine upload .\dist\THE_GENERATED_PACKAGE
4 changes: 2 additions & 2 deletions setup.py
Original file line number Diff line number Diff line change
@@ -8,14 +8,14 @@

setup(
name='django-dynamic-datatb',
version='1.0.8',
version='1.0.26',
zip_safe=False,
packages=find_packages(),
include_package_data=True,
description='Django Dynamic Datatables',
long_description=README,
long_description_content_type="text/markdown",
url='https://github.com/app-generator/django-dynamic-datatb',
url='https://app-generator.dev/docs/developer-tools/dynamic-datatables.html',
author='AppSeed.us',
author_email='support@appseed.us',
license='MIT License',