jinja2 template support for tornado web framework
Project description
jinja2 support for tornado applications.
Install
$ python setup.py install
Usage
from jinja_tornado import JinjaApp, JinjaTemplateMixin
application = tornado.web.Application( ... )
environment = JinjaApp.init_app(application)
"""init_app returns jinja2 environment that is used by application.
takes a dict as second argument which contains your custom jinja 2
settings for environment constructor.
see http://jinja.pocoo.org/docs/api/#jinja2.Environment """
class JinjaEnabledHandler(JinjaTemplateMixin, tornado.web.RequestHandler):
""" this Handler supports
- `self.session` properties (as flask.session) and `session` in template
- `self.render` method
- `self.render_string` method """
# custom filters, tests, globals
environment = JinjaApp.init_app(application)
@environment.filter()
def foo_to_bar(x):
return x.replace('foo', 'bar')
Template variables
request => tornado.web.RequestHandler.request
session => tornado.web.RequestHandler.get_secure_cookie('session')
path_args => tornado.web.RequestHandler.path_args
path_kwargs => tornado.web.RequestHandler.path_kwargs
settings => tornado.web.RequestHandler.application.settings
reverse_url => tornado.web.RequestHandler.application.reverse_url
static_url => tornado.web.RequestHandler.static_url
xsrf_form_html => tornado.web.RequestHandler.xsrf_form_html
datetime => datetime (python module)
locale => tornado.web.RequestHandler.locale
_ => tornado.web.RequestHandler.locale.translate
handler => tornado.web.RequestHandler (self)
current_user => tornado.web.requestHandler.current_user
Template filters
tojson => JSON-encode the given python object
<script>
var obj = {{ obj | tojson | safe }}
</script>
xhtml_escape => tornado.escape.xhtml_escape
url_escape => tornado.escape.url_escape
squeeze => tornado.escape.squeeze
linkify => tornado.escape.linkify
Todo
write tests
no more opinionated session implementation
implement template preprocessors
UIModules, and various ‘tornado’ template structures
License
MIT License. See: LICENSE
History
release/0.1.1 (2016-04-28 17:35:34 -0500)
git log --reverse --pretty=format:'* %s [%h]' v0.1.0..release/0.1.1
MRG: Merge tag ‘vv0.1.0’ into develop [dc7d3e6]
DOC: setup.py: PyPI trove classifiers [1e948a2]
BLD: setup.cfg: [wheel] universal=1 (py2.py3) [e2a35e9]
DOC: setup.py, __init__.py: v0.1.1 [7f3239a]
v0.1.0 (2016-04-28 17:15:48 -0500)
git log --reverse --pretty=format:'* %s [%h]' b8d13ce..v0.1.0
initial commit [2defc31]
2nd commit [c05ab84]
now it is a package [0993866]
fixed __init__ and readme [2f1171e]
Update README.md [f78735d]
Update jinja_tornado.py [6df0211]
Update README.md [01fa568]
REF: README.md -> README.rst [49927dd]
BLD,DOC: Makefile, README.rst, requirements.txt, setup.py: v0.1.0 packaging [d96bdf3]
DOC,BLD: HISTORY.rst, setup.py: add HISTORY.rst to long_description [4fbcb84]
DOC: README.rst: Authors [3f8dd1a]
DOC: setup.py: author, author_email, url [10e837a]
DOC: LICENSE: amend (MIT) LICENSE copyright [0e6641a]
BLD: MANIFEST.in: add MANIFEST.in [746358b]
BLD: Makefile: ‘python setup.py check -r -s’ [d196959]
DOC: HISTORY.rst: git-changelog.py -r release/v0.1.0 –hdr=- | pbcopy [824a131]
BLD: Makefile, requirements[-dev].txt: development requirements [54113b5]
BLD: Makefile: twine register because HTTPS [c4d1535]
DOC: HISTORY.rst: git-changelog.py -r release/v0.1.0 –hdr=- | pbcopy [e3b7d82]
MRG: Merge branch ‘release/v0.1.0’ [bf83680]
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file jinja_tornado-0.1.1.tar.gz.
File metadata
- Download URL: jinja_tornado-0.1.1.tar.gz
- Upload date:
- Size: 7.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
05d79a6ed08d549f1ee1c4fcbaf1b03d73fd942d69389ea7eb8b75556be3fcfc
|
|
| MD5 |
0a14c8092ff86ddef893168848df6de1
|
|
| BLAKE2b-256 |
3230984f8b93bd32b03d4d84611fcffb7220e3f614a5e86261e26ad42b152bd1
|
File details
Details for the file jinja_tornado-0.1.1-py2.py3-none-any.whl.
File metadata
- Download URL: jinja_tornado-0.1.1-py2.py3-none-any.whl
- Upload date:
- Size: 7.4 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
aba72540db90c37c752f407f2b51e2c603eb475ea63f7e356d71649cb0cb14e5
|
|
| MD5 |
7038e03fac329b864b77daa3a255712d
|
|
| BLAKE2b-256 |
38e6e71fbbe50c79893cc61efdc96df048b19db20c65b259d57e5156f6967a17
|