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 hashes)

Uploaded Source

Built Distribution

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

Uploaded Python 2 Python 3

Supported by

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