tornado中的模板

设置模板

方式一:

class MainHandler(RequestHandler):

    async def get(self, *args, **kwargs):
        word = "hello bobby"
        loader = template.Loader("/xx/xx")
        self.finish(loader.load("hello.html").generate(word=word))

方式二

class MainHandler(RequestHandler):

    # http方法
    async def get(self, *args, **kwargs):
        word = "hello bobby"
        self.render("templates/hello.html", word=word)

方式三

在方式二中 所有的路径前面都要加上templates,比较麻烦;可以统一在settings中指定好,即可省略去。

# tmplate_path在settings文件中需要指定好
settings = {"static_path": "/xx/xx/static",
            "static_url_prefix": "/static/2",
            "tmplate_path": "template"  # 只写文件夹名称即可 不要写完整路径
            }

tornado模板的理念是可以在html中添加python逻辑;很灵活但劣势也很明显,不利于前后端配合。

 

模板继承

占位符:

{% block body %}

{% end %}

继承(其他地方同base页面 只把包起来的部分替换掉)

{% extends 'base.html' %}

{% block body %}

<div></div>

{% end %}

UIModule

组件化开发(html js css可以打包成一个组件)


class OrderHandler(UIModule):
    def render(self,order, *args, **kwargs):
        self.render_string('ui_modules/order-list.html', order=order)

    def css_files(self):
        return ["xx/xx.css"]
    
    def javascript_files(self):
        return ["xx/xx.js"]

注:在实际项目中,自己不会来采用tornado的模板,本文只做一个自学过程中的简要记录。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值