tornado 模板引擎

Posted wbdream

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了tornado 模板引擎相关的知识,希望对你有一定的参考价值。

 在tornado的模板引擎中,有两种方式,UImethod与UImodule 自定义方法

在模板中调用方法:

  tornado:与Django一样使用{{}},但是对于for循环之类,Django以{% endfor%}结尾,而tornado以{% end%}结尾。调用字典或者列表,tornado使用list[0],而Django以list.0使用方法不一样。

  要想使用UImethod与UImodule,必须先早app里面的settings中注册:

  

import uimethod as ud
import uimodule as um
settings = {"template_path": ‘views‘,
‘cookie_secret‘: ‘ahsfkasjasfasd‘,
‘ui_methods‘: ud,
‘ui_modules‘: um,
}

然后再在模板中使用uimodule.py

from tornado.web import UIModule
from tornado import escape

class Test(UIModule):

    def render(self, *args, **kwargs):

        return <h1>ui_module</h1>‘  # 不转义
     # return escape.xhtml_escape(‘<h1>ui_module</h1>‘) 转义

uimethod.py def tag(request): return <h1>ui_method</h1>

模板:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
    uimethod 自动转义:{{tag()}}
    uimethod 不转义:{% raw tag()%}
    uimodule:{% module Test()%}
    欢迎光临
</body>
</html>

 

以上是关于tornado 模板引擎的主要内容,如果未能解决你的问题,请参考以下文章

Tornado框架配置使用Jinja2模板引擎

web框架--tornado框架之模板引擎

Python程序员必知的tornado模板引擎语法

Python Tornado初学笔记之表单与模板

模板引擎

Tornado