Django datatables and widgets, both AJAX and traditional. Display-only ModelForms. ModelForms / inline formsets with AJAX submit and validation. Works with Django templates.
OTHER License
Bot releases are visible (Hide)
Published by Dmitri-Sintsov over 2 years ago
Built-in custom elements, including es5 IE11 polyfills.
Bootstrap 5 compatibility.
ObjDict Django model serializer with built-in field permissions check for AJAX viewmodels, including datatables.
get_absoulte_url with optional user permission check / link title generation.
Published by Dmitri-Sintsov over 2 years ago
Built-in es6 modules support for modern browsers.
Optional SystemJS loader support for IE11 via django_deno.
Optional minified terser bundles support both for es6 modules and for SystemJS loader via django_deno.
datatables support separate cell click actions, not just row actions.
More throughout support for datatables annotated fields / virtual fields via grid_fields dicts.
Optional lazy registration of client-side components.
Numerous fixes, including improved related grid view kwargs auto-detection, see pageRouteKwargsKeys and pageRouteKwargsKeys example.
ListRangeFilter for ListSortingView range fields.
Published by Dmitri-Sintsov over 3 years ago
Optional separate action handlers for HTTP methods.
RangeFilter / DateFilter / DateTimeFilter ListSortingView filters for numeric / DateField / DateTimeField Django model fields.
ListQuerySet supports ordering by prefetched reverse relation list field name: qs.order_by('reverse_relation_list__field_name')
Automatic client-side localization.
Support of Selenium 4. Additional Selenium commands. Improved Selenium logging.
Django 3.1a1 / Bootstrap 4.5 / Knockout 3.5 support.
MultipleKeyGridWidget edit many to many relationships for Django models.
PageContext to inject view title / client data / client routes / custom scripts to templates via TemplateResponse.
Improved Bootstrap popovers support.
Support for Nested components in formsets.js (empty_form) 'anonymous_template' Knockout binding.
UrlPath class supports automatic re_path() generation with positional named keyword arguments.
Published by Dmitri-Sintsov over 5 years ago
djk_ui
application.Renderer
classes provides customizable layouts for fields / forms / related forms / inline formsets.Published by Dmitri-Sintsov over 6 years ago
Grids (datatables) compound columns support. New built-in action type 'pagination'.
Optional built-in Javascript error logger.
AJAX forms / viewmodels improvements and refactoring.
Published by Dmitri-Sintsov about 7 years ago
AJAX actions are rewritten as server-side ActionsView
class and client-side counterpart App.Actions
. It is now used as foundation for most of AJAX code, including grid datatables and new App.EditForm
/ App.EditInline
client-side components.
New widget widgets.PrefillWidget
to select pre-filled text from the list of supplied values.
Selective skipping of DisplayText
field widget rendering.
Basic version of ViewmodelValidator
for AJAX submitted forms.
Published by Dmitri-Sintsov over 7 years ago
Rewritten recursive underscore.js template processor.
Displaying verbose field names in grid rows, grid row actions and in ForeignKeyGridWidget related model field placeholder.
Clean-up of client-side components code.
Better support for grids that use RAW queries with LEFT JOIN
, which may have multiple rows with the same pkVal.
Improvements in Selenium automation testing: better handling of automation commands, more of commands implemented, much larger test coverage.
Numerous bugfixes, including related field queries support in FilteredRawQuerySet.
Published by Dmitri-Sintsov over 7 years ago
views.ListSortingView.
Published by Dmitri-Sintsov over 7 years ago
ListSortingView
now supports multiple_choices option of the choices filter.
Large monolithic views.py
was split into separate base.py
/ detail_edit.py
/ list.py
/ ajax.py
class-based views.
Alternative breadcrumbs layout of field filters widgets in ko_grid_body()
macro used by KoGridView
.
Various bugfixes and security fixes.
Published by Dmitri-Sintsov over 7 years ago
Large improvements in Selenium testing support: additional commands are implemented, auto-retry on DOM timeout, fixtures loading / saving which allows to skip already debugged parts of tests, saving developer's time.
ContextMiddleware
supports request mocking and request-time storage.
FilteredRawQuerySet
supports Q
expressions (Q
objects) with relation mapping.
BaseFilterView
/ KoGridView
- basic support for Q
expressions (currently is used for None
value of field
filter), support for in
query for choice
filter value via the list of values.
Even better support of optional Django model get_str_fields()
method in DisplayText
widget and in Knockout.js grids.
Various bugfixes.
AJAX grids implement new types of filters. Autodiscover of foreign key filter fields options when possible.
Two new types of querysets - one to filter / order / silce raw queries, second one implements large part of Django queryset functionality for lists of Django model instances, returned by .prefetch_related().
ListSortingView (non-AJAX datatables) improvements.
SendmailQueue is extensible now via optional ioc class, which allows to use database / celery to implement background email queues.