Skip to main content

Jinja2 template renderer for Sanic

Project description

sanic-aioja

aioja template renderer for Sanic.

This library has been inspired by so many other projects (sanic-jinja2, django-jinja). So thanks all for the inspiration.

PyPI Build Status

Install

pip install sanic-aioja

Features

  • Debug mode
  • Babel support
  • @jinja2.template decorator
  • Shortcut methods: globals, filters, tests, extensions and policies
  • Built-in url and static global functions
  • Ability to precompile templates

Example

from sanic import Sanic
from sanic.response import html
from sanic_aioja import Jinja2, FileSystemLoader

app = Sanic("sanic_aioja")

jinja2 = Jinja2(
    app,

    # use DebugUndefined
    debug=True,

    # precompile templates on server start.
    # See jinja2.Environment.compile_templates()
    precompile=True,
    precompile_path=".jinja2.zip",

    # Jinja2 options
    trim_blocks=True,
    lstrip_blocks=True,
    loader=FileSystemLoader("./templates"),    
)

# Lets extend environment with some globals
jinja2.globals({
    "token": "extensions.token",
}).policies({
    "ext.i18n.trimmed": True,
})


@app.route('/')
@jinja2.template("index.html")
async def index(request):
    return {
        "header": "Sanic-aioja",
        "array": ["Red", "Green", "Blue"],
    }


@app.route('/render/')
async def index(request):
    content = await jinja2.render_to_string(request, "index.html", {
        "header": "Sanic-aioja",
        "array": ["Red", "Green", "Blue"],
    })
    return html(content)


if __name__ == "__main__":
    app.run()

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sanic-aioja-0.0.1.tar.gz (6.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

sanic_aioja-0.0.1-py2.py3-none-any.whl (6.8 kB view details)

Uploaded Python 2Python 3

File details

Details for the file sanic-aioja-0.0.1.tar.gz.

File metadata

  • Download URL: sanic-aioja-0.0.1.tar.gz
  • Upload date:
  • Size: 6.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/50.3.1 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.5

File hashes

Hashes for sanic-aioja-0.0.1.tar.gz
Algorithm Hash digest
SHA256 1803a43809dc60df8006ad1144773bacbbb9a45aa3676df4a1250ad9ff1fcf93
MD5 9f7defb071dc46b9085e31e854708cd1
BLAKE2b-256 70347b02e474aab32adbf76ad41bf53c8f7873ec5c2bd7781e9bd839be22ed84

See more details on using hashes here.

File details

Details for the file sanic_aioja-0.0.1-py2.py3-none-any.whl.

File metadata

  • Download URL: sanic_aioja-0.0.1-py2.py3-none-any.whl
  • Upload date:
  • Size: 6.8 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/50.3.1 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.5

File hashes

Hashes for sanic_aioja-0.0.1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 efcac998a0d81140a1d76a04ccb57bf5315eb6f328580bcda413aaad79e1bf66
MD5 bf09f3a54baf984b7ef67506f6bf9a61
BLAKE2b-256 523eb83367a9aca9d845d9f5d47cd0461829edfec622ab4bf82477b21d63c883

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page