Jinja2模板对Tornado Web框架的支持

jinja_tornado的Python项目详细描述


许可证:麻省理工学院许可证

Jinja2支持Tornado应用程序。

Install

$ python setup.py install

Usage

fromjinja_tornadoimportJinjaApp,JinjaTemplateMixinapplication=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 """classJinjaEnabledHandler(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, globalsenvironment=JinjaApp.init_app(application)@environment.filter()deffoo_to_bar(x):returnx.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

  • 编写测试
  • 不再固执己见
  • 实现模板预处理器
  • uimodules和各种“tornado”模板结构

Authors

License

麻省理工学院执照。见:LICENSE

History

release/0.1.2 (2016-04-28 17:43:11 -0500)

git log --reverse --pretty=format:'* %s [%h]' v0.1.1..release/0.1.2
  • mrg:将标签“v0.1.1”合并到development[a78880c]
  • doc:readme.rst:指向最新维护者的源链接[4C55B41]
  • 文件:setup.py,uuu init_uuu.py:v0.1.2[25707e8]

v0.1.1 (2016-04-28 17:38:37 -0500)

git log --reverse --pretty=format:'* %s [%h]' v0.1.0..v0.1.1
  • mrg:将标签“vv0.1.0”合并到development[dc7d3e6]
  • doc:setup.py:pypi trove分类器[1e948a2]
  • bld:setup.cfg:[轮]通用=1(py2.py3)[e2a35e9]
  • doc:setup.py,uuu init_uuu.py:v0.1.1[7f3239a]
  • 文档:history.rst:git-changelog.py-r release/0.1.1–hdr=-pbcopy[616610b]
  • MRG:合并分支'release/0.1.1'[34F9B9A]

v0.1.0 (2016-04-28 17:15:48 -0500)

git log --reverse --pretty=format:'* %s [%h]' b8d13ce..v0.1.0
  • 初始提交[2defc31]
  • 第二次提交[C05AB84]
  • 现在是套餐[0993866]
  • 已修复初始化和自述文件[2F171E]
  • 更新readme.md[f78735d]
  • 更新jinja_tornado.py[6df0211]
  • 更新readme.md[01fa568]
  • 参考:readme.md->;readme.rst[49927dd]
  • bld,doc:makefile,readme.rst,requirements.txt,setup.py:v0.1.0打包[d96bdf3]
  • doc,bld:history.rst,setup.py:add history.rst to long_description[4FBCB84]
  • doc:readme.rst:作者[3f8dd1a]
  • doc:setup.py:作者,作者电子邮件,url[10e837a]
  • 文件:许可证:修改(MIT)许可证版权所有[0E6641A]
  • bld:manifest.in:添加manifest.in[746358b]
  • bld:makefile:'python setup.py check-r-s'[d196959]
  • 文档:history.rst:git-changelog.py-r release/v0.1.0–hdr=-pbcopy[824a131]
  • bld:makefile,需求[-dev].txt:development需求[54113b5]
  • bld:makefile:tween寄存器,因为https[c4d1535]
  • 文档:history.rst:git-changelog.py-r release/v0.1.0–hdr=-pbcopy[e3b7d82]
  • mrg:合并分支'release/v0.1.0'[bf83680]

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java AndroidStudio与网站的连接?   面向对象Java对象方法堆栈帧参数   从Java执行shell CURL的正确方法是什么?   Java滑动JPanels动画   java初始化字段变量   java类DrawerItem需要一个类型参数   Java2D/Swing:将具有文本抗锯齿的组件呈现到BuffereImage   java如何修复scala中的不匹配错误,其中发现:Seq[scala.collection.immutable.Seq required:scala.collection.Seq?   java扩展rest控制器和模型在spring boot应用程序中不起作用   java如何从数组中选择一个指定索引以在开关情况下使用它   java如何删除标题栏并保持浏览器全屏显示   java如何构建graphicalinteractive小程序?   java在接口中定义常量意味着什么?   更新消息{0}上的java Youtube API意外部分   java是由:org引起的。冬眠MappingException:无法确定的类型   java无法启动组件[StandardEngine[Catalina]。标准主机[本地主机]   java在RCP应用程序中保存存储在viewpart中的数据   使用Jackson的嵌套JSON到Java映射   java缓冲字节数组(来自DatagramPacket)