jinja2 template renderer for aiohttp.web (http server for asyncio)
Project description
aiohttp_jinja2
jinja2 template renderer for aiohttp.web.
Usage
Before template rendering you have to setup jinja2 environment first:
app = web.Application(loop=self.loop) aiohttp_jinja2.setup(app, loader=jinja2.FileSystemLoader('/path/to/templates/folder'))
After that you may to use template engine in your web-handlers. The most convinient way is to decorate web-handler:
@aiohttp_jinja2.template('tmpl.jinja2') def handler(request): return {'name': 'Andrew', 'surname': 'Svetlov'}
On handler call the aiohttp_jinja2.template decorator will pass returned dictionary {'name': 'Andrew', 'surname': 'Svetlov'} into template named tmpl.jinja2 for getting resulting HTML text.
If you need more complex processing (set response headers for example) you may call render_template function:
@asyncio.coroutine def handler(request): context = {'name': 'Andrew', 'surname': 'Svetlov'} response = aiohttp_jinja2.render_template('tmpl.jinja2', request, context) response.headers['Content-Language'] = 'ru' return response
License
aiohttp_jinja2 is offered under the Apache 2 license.
CHANGES
X.X.X (XXXX-XX-XX)
Don’t allow non-mapping context
0.3.0 (2015-03-15)
Documentation release
0.2.1 (2015-02-15)
Fix render_template function
0.2.0 (2015-02-05)
Migrate to aiohttp 0.14
Add status parameter to template decorator
Drop optional response parameter
0.1.0 (2015-01-08)
Initial release
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for aiohttp_jinja2-0.3.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f62b0ad6dfc0ac39d7528bda04ea0812f39d9f88fca5a8e58a41a8e862ef46cb |
|
MD5 | 3cb3e3e71deedf5f5e2a0737dce993ad |
|
BLAKE2b-256 | b3d28389245b67bb618e60b325845e3c8eb79178e4609d38d4bbde93bf5831cf |