Skip to content

hartym/django-includes

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
doc
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

django-includes

Experimental software. There is no tests, no documentation, use it are your own risks (or don't).

Currently testing that with django 2 and python 3.5+ only, which will be the only supported target.

Install

  • Add 'django_includes' to INSTALLED_APPS.
  • Add DjangoIncludesExtension to Jinja2 environment.
from django_includes.jinja2 import DjangoIncludesExtension

def environment(**options):
    env = Environment(**options)

    # your logic here

    env.add_extension(DjangoIncludesExtension)

    return env
  • Use {{ render_sync(request, 'mused.views.MusicGroupListView', musicgenre=object) }} in templates.

Now, that's only the "synchronous render",

Install hinclude

If you wanna use hinclude (a simple javascript that loads asynchronously some part of your page):

Add hinclude url to your project:

from django_includes.views import include_view

urlpatterns += [
    path('hinclude/<token>', include_view, kwargs={'via': 'hinclude'}, name='hinclude')
]

Add hinclude to your layout

<html lang="en" xmlns:hx="http://purl.org/NET/hinclude">
<head>
    <script src="{{ static('hinclude.js') }}"></script>
  • Use {{ render_hinclude(request, 'mused.views.MusicGroupListView', musicgenre=object) }} in templates.

Note that this will use json web tokens to encode the parameters, using your django secret as a "seed" for encryption.

About

Include views as a subpart of another view, using either HTTP (with esi or hinclude) or direct render. WARNING: THIS IS AN EXPERIMENT, I'LL BREAK THINGS

Resources

License

Stars

Watchers

Forks

Packages

No packages published