All Projects → Dmitri-Sintsov → Django Jinja Knockout

Dmitri-Sintsov / Django Jinja Knockout

Licence: other
Django datatables and widgets, both AJAX and traditional. Display-only ModelForms. ModelForms / inline formsets with AJAX submit and validation. Works with Django templates.

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Django Jinja Knockout

E Commerce 2 django
Guest register, user register, user login, user logout, account home page, product view history, change password, reset password, change name, send activation email when register, resend activation email, add shipping address, add billing address, add nickname to the addresses, edit shipping address, edit billing address, view list of your addresses, reuse shipping addresses when order products, reuse billing addresses when ordeer products, show sales analytics if staff or admin only using -chart.js-, get analytics data with Ajax, receive marketing email, change if user will receive marketing email or not by admin, send contact message with Ajax, products list, product detail, download product detail as a PDF file, download digital product files -if the user purchased that digital product only-, orders list, list of digital products files, order detail, download order detail as a PDF file, verify order ownership with Ajax -to secure order detail page-, show cart products, add or remove product from cart, checkout page, thanks page when order placed successfully, add or reuse payment method, add or reuse payment method with Ajax, search products by title, search products by description, search products by price, search products by tag title, write tags for products -by admin only-, auto fill contact email, full name if user logged in.
Stars: ✭ 20 (-82.76%)
Mutual labels:  django, django-framework, bootstrap4
Angular Slickgrid
Angular-Slickgrid is a wrapper of the lightning fast & customizable SlickGrid datagrid, it also includes multiple Styling Themes
Stars: ✭ 298 (+156.9%)
Mutual labels:  datagrid, bootstrap4, bootstrap3
Django Rest Framework Datatables
Seamless integration between Django REST framework and Datatables.
Stars: ✭ 241 (+107.76%)
Mutual labels:  django, datagrid, datatables
Aurelia Slickgrid
Aurelia-Slickgrid a wrapper of the lightning fast & customizable SlickGrid datagrid with a few Styling Themes
Stars: ✭ 100 (-13.79%)
Mutual labels:  datagrid, bootstrap4, bootstrap3
Django Bootstrap Modal Forms
A Django plugin for creating AJAX driven forms in Bootstrap modal.
Stars: ✭ 244 (+110.34%)
Mutual labels:  django, bootstrap4, bootstrap3
Banking System
A banking System Created Using Django Python Web Framework
Stars: ✭ 105 (-9.48%)
Mutual labels:  django, django-framework, bootstrap4
Ecommerce
We're going to take you step-by-step to build a modern, fully open-source, eCommerce web application using Python, Django, Bootstrap, Javascript, and more.
Stars: ✭ 980 (+744.83%)
Mutual labels:  django, bootstrap4
Guides
Guides for learning + doing better web and app development. Created by Coding for Entrepreneurs.
Stars: ✭ 1,042 (+798.28%)
Mutual labels:  django, django-framework
Spirit
Spirit is a modern Python based forum built on top of Django framework
Stars: ✭ 1,045 (+800.86%)
Mutual labels:  django, django-framework
Awesome Django Cn
Django 优秀资源大全。
Stars: ✭ 1,153 (+893.97%)
Mutual labels:  django, django-framework
Developer Portfolio
Single page developer portfolio template.
Stars: ✭ 23 (-80.17%)
Mutual labels:  bootstrap4, bootstrap3
Flight Ticket Booksystem
大三下数据库课设 - 机票预订系统 - Django
Stars: ✭ 55 (-52.59%)
Mutual labels:  django, bootstrap3
Django React Boilerplate
Django, React, Bootstrap 4 with Python 3 and webpack project boilerplate
Stars: ✭ 1,164 (+903.45%)
Mutual labels:  django, bootstrap4
Django Bootstrap4
Bootstrap 4 integration with Django.
Stars: ✭ 877 (+656.03%)
Mutual labels:  django, bootstrap4
Bootstrap Validate
A simple Form Validation Library for Bootstrap 3 and Bootstrap 4 not depending on jQuery.
Stars: ✭ 112 (-3.45%)
Mutual labels:  bootstrap4, bootstrap3
Lightning Data Grid
A data grid for Lightning Component Framework
Stars: ✭ 24 (-79.31%)
Mutual labels:  datagrid, datatables
Thinkdiff
My open source project links, programming and software development related code and tutorials are in this repo. Content types: Python, JavaScript, Dart | Django, React, Flutter, React-Native etc.
Stars: ✭ 65 (-43.97%)
Mutual labels:  django, django-framework
Django Poll App
Django poll app is a full featured polling app. You have to register in this app to show the polls and to vote. If you already voted you can not vote again. Only the owner of a poll can add poll , edit poll, update poll, delete poll , add choice, update choice, delete choice and end a poll. If a poll is ended it can not be voted. Ended poll only shows user the final result of the poll. There is a search option for polls. Also user can filter polls by name, publish date, and by number of voted. Pagination will work even after applying filter.
Stars: ✭ 78 (-32.76%)
Mutual labels:  django, bootstrap4
Awesome Django
Repository mirror of GitLab: https://gitlab.com/rosarior/awesome-django This repository is not monitored for issues, use original at GitLab.
Stars: ✭ 8,527 (+7250.86%)
Mutual labels:  django, django-framework
Drf Datatable Example Server Side
DataTables Example (server-side) - Python Django REST framework
Stars: ✭ 84 (-27.59%)
Mutual labels:  django, datatables

===================== django-jinja-knockout

.. _App.renderValue: https://github.com/Dmitri-Sintsov/django-jinja-knockout/search?q=App.renderValue&unscoped_q=App.renderValue .. _App.renderNestedList: https://django-jinja-knockout.readthedocs.io/en/latest/datatables.html#nested-verbose-field-names .. _Bootstrap 3: https://github.com/Dmitri-Sintsov/djk-bootstrap3 .. _Bootstrap 4: https://github.com/Dmitri-Sintsov/djk-bootstrap4 .. _data-bind: https://knockoutjs.com/documentation/binding-syntax.html .. _datatables: https://django-jinja-knockout.readthedocs.io/en/latest/datatables.html .. _django-jinja-knockout python localization: https://poeditor.com/join/project/9hqQrFEdDM .. _django-jinja-knockout javascript localization: https://poeditor.com/join/project/049HWzP3eb .. _empty_form: https://docs.djangoproject.com/en/dev/topics/forms/formsets/#empty-form .. _FilteredRawQuerySet: https://django-jinja-knockout.readthedocs.io/en/latest/query.html#filteredrawqueryset .. _ForeignKeyGridWidget: https://django-jinja-knockout.readthedocs.io/en/latest/widgets.html#foreignkeygridwidget .. _ForeignKeyRawIdWidget: https://github.com/django/django/search?l=Python&q=ForeignKeyRawIdWidget .. _Jinja2: http://jinja.pocoo.org/docs/dev/ .. _kiwnix: https://github.com/Dmitri-Sintsov/django-jinja-knockout/commits?author=kiwnix .. _Knockout.js: http://knockoutjs.com/ .. _ListView: https://docs.djangoproject.com/en/dev/ref/class-based-views/generic-display/#listview .. _ListSortingView: https://django-jinja-knockout.readthedocs.io/en/latest/views.html#listsortingview .. _KoGridView: https://django-jinja-knockout.readthedocs.io/en/latest/datatables.html .. _ListQuerySet: https://django-jinja-knockout.readthedocs.io/en/latest/query.html#listqueryset .. _many to many relationships: https://docs.djangoproject.com/en/dev/topics/db/examples/many_to_many/ .. _ModelForm: https://docs.djangoproject.com/en/dev/topics/forms/modelforms/#modelform .. _MultipleKeyGridWidget: https://django-jinja-knockout.readthedocs.io/en/latest/datatables.html#multiplekeygridwidget .. _Nested components: https://django-jinja-knockout.readthedocs.io/en/latest/clientside.html#clientside-nested-components .. _PageContext: https://django-jinja-knockout.readthedocs.io/en/latest/context_processors.html#pagecontext-page-context .. _prefetch_related(): https://docs.djangoproject.com/en/dev/ref/models/querysets/#django.db.models.Prefetch .. _sample project: https://github.com/Dmitri-Sintsov/djk-sample .. _TemplateResponse: https://docs.djangoproject.com/en/dev/ref/template-response/ .. _UrlPath: https://github.com/Dmitri-Sintsov/djk-sample/search?l=Python&q=UrlPath .. _viewmodels: https://django-jinja-knockout.readthedocs.io/en/latest/viewmodels.html

.. image:: https://badge.fury.io/py/django-jinja-knockout.png :alt: PyPI package :target: https://badge.fury.io/py/django-jinja-knockout

.. image:: https://circleci.com/gh/Dmitri-Sintsov/django-jinja-knockout.svg?style=shield :target: https://circleci.com/gh/Dmitri-Sintsov/django-jinja-knockout

.. image:: https://img.shields.io/travis/Dmitri-Sintsov/django-jinja-knockout.svg?style=flat :target: https://travis-ci.org/Dmitri-Sintsov/django-jinja-knockout

.. image:: http://www.icoph.org/img/ic-youtube.png :alt: Watch selenium tests recorded videos. :target: https://www.youtube.com/channel/UCZTrByxVSXdyW0z3e3qjTsQ

.. image:: https://badges.gitter.im/django-jinja-knockout/Lobby.svg :alt: Join the chat at https://gitter.im/django-jinja-knockout/Lobby :target: https://gitter.im/django-jinja-knockout/Lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge

.. image:: https://www.paypalobjects.com/en_US/i/btn/btn_donate_SM.gif :alt: Donate to support further development :target: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=EWVQRCWPUE652&source=url

Screenshot of the sample project_:

.. image:: https://raw.githubusercontent.com/wiki/Dmitri-Sintsov/djk-sample/djk_edit_inline.png :width: 740px

More screenshots with descriptions are available at: https://github.com/Dmitri-Sintsov/djk-sample/wiki

Documentation (in development): https://django-jinja-knockout.readthedocs.org/

  • Supports Django 2.2 LTS, 3.0, 3.1; Python 3.6 / 3.7 / 3.8 / 3.9.

Please contribute to the localization of the project:

  • django-jinja-knockout python localization_
  • django-jinja-knockout javascript localization_

Localization:

  • Chinese: goldmonkey
  • Dutch: Melvyn Sopacua
  • Polish: pawelkoston
  • Spanish: Julio Cesar Cabrera Cabrera, kiwnix_

Key features

  • AJAX based django.admin-like paginated datatables_ (grids) with sorting / filters and custom actions.

  • Integrates Jinja2 into existing Django templates (DTL).

  • Bootstrap 3_ / Bootstrap 4_ / Jinja2_ / Knockout.js_ for Django projects.

  • No deep knowledge of Knockout.js is required: it has ready working components.

  • Dynamic adding / removing of inline formsets with Knockout.js, protected from XSS.

  • Default template renderers for Django forms / related forms / inline formsets with the possibility to override these to customize the visual layout.

  • ForeignKeyGridWidget_ provides ForeignKeyRawIdWidget-like functionality to select ModelForm foreign key field value via AJAX query / response.

  • Django raw queries with filter() / exclude() / order() / values() / values_list() and SQL slicing support via FilteredRawQuerySet, suitable for usage in ListView / ListSortingView_ / KoGridView_ derived classes.

  • ListQuerySet_ to query Python lists, including prefetch_related()_ results.

  • Jinja2 templates can be integrated into existing Django templates via custom template library tag::

    {% extends 'base_min.html' %} {% load jinja %} {% load static %}

    {% block main %} {% jinja 'bs_list.htm' with render=1 view=view object_list=object_list is_paginated=is_paginated page_obj=page_obj %} {% endblock main %}

Overview

Knockout.js uses unobtrusive data-bind_ HTML attributes with JSON-like values with causes no conflict to server-side double braces template syntax of DTL / Jinja2: no need to escape templates.

Combining client-side Knockout.js templates and server-side Jinja2 templates allows to write more powerful and compact template code.

Jinja2 is faster and is more powerful than built-in DTL templates. Jinja2 templates may be called from DTL templates by using custom template tag library {% load jinja %}.

Uses

It's not a pure SPA framework, but a mixed approach of server-side pages with embedded AJAX content and client-side scripts. Although it may be used for SPA as well. Classical Web applications aren't "outdated" in any way - because such applications are much better indexable by web crawlers, Python is better language than Javascript in general, also server-side has less glitches than browsers.

Version 1.1.0

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.

.. _History: HISTORY.rst

.. _Changes: CHANGES.rst

Documentation

The full documentation is at https://django-jinja-knockout.readthedocs.org.

.. github relative links .. see setup.py

Quick notes

.. Next links are github relative links. Do not process these via sphinx as it does not follow them correctly. .. _Credits: AUTHORS.rst .. _contribute: CONTRIBUTING.rst .. _Changes: CHANGES.rst .. _History: HISTORY.rst .. _Installation: INSTALLATION.rst .. _Introduction: QUICKSTART.rst

  • Installation_
  • Introduction_
  • How to contribute_
  • History_
  • Changes_
  • Credits_

Cookiecutter Tools Used in Making This Package

  • cookiecutter
  • cookiecutter-djangopackage
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].