mako template renderer for aiohttp.web (http server for asyncio)
Project description
mako template renderer for aiohttp.web based on aiohttp_jinja2. Library has almost same api and support python 3.5 (PEP492) syntax. It is used in aiohttp_debugtoolbar.
Example
import asyncio
import aiohttp_mako
from aiohttp import web
@aiohttp_mako.template('index.html')
async def func(request):
return {'head': 'aiohttp_mako', 'text': 'Hello World!'}
async def init(loop):
app = web.Application(loop=loop)
lookup = aiohttp_mako.setup(app, input_encoding='utf-8',
output_encoding='utf-8',
default_filters=['decode.utf8'])
template = """<html><body><h1>${head}</h1>${text}</body></html>"""
lookup.put_string('index.html', template)
app.router.add_route('GET', '/', func)
handler = app.make_handler()
srv = await loop.create_server(handler, '127.0.0.1', 8080)
print("Server started at http://127.0.0.1:8080")
return srv, handler
loop = asyncio.get_event_loop()
srv, handler = loop.run_until_complete(init(loop))
try:
loop.run_forever()
except KeyboardInterrupt:
loop.run_until_complete(handler.finish_connections())
License
aiohttp_mako is offered under the Apache 2 license.
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
aiohttp-mako-0.3.0.tar.gz
(7.4 kB
view hashes)
Built Distribution
Close
Hashes for aiohttp_mako-0.3.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5f9b572b72b60b5fc420781e8092e5018a679aabb5a22ccbf974128e584b68e3 |
|
MD5 | 4f664482eb26cb3d3af163322bddc1af |
|
BLAKE2b-256 | 02886ec4e179fddca78a22ff02b12d0961faaaad7a02e187947e3e3a1b09ae46 |