python3 模板库_[zz]尝试PyTenjin --号称最快的Python 模板库

官网在这里http://www.kuwata-lab.com/tenjin/

曾经使用过Kid、Cheeth、Web2py的模 板,目前使用Mako和Django(Jinjia)。曾经非常的欣赏Web2py的模板,无论代码还是实际的html代码对coder都异常的友好,符 合自己‘想当然’这个库评价标准。但是因为Web2py没有将他的模板独立(好像后来,Limodou的Uliweb将这个库改造后独立了出来),且尚确 是不少功能,就放弃了。

今天看到PyTenjin又有了那种感觉:).

好了,来看代码,

from setting import *

from tenjin.helpers.html import *

?>

#{ SITE_TITLE }

#{SITE_SUB_TITLE}

http://#{curdomain}/

#{site_updated}

Copyright © 2010, #{ SITE_TITLE }

${ topic.title}

tag:#{curdomain},#{topic.created.strftime(“%Y-%m-%d)”) }}:/p/#{topic.key().id()}

#{topic.created.strftime(“%Y-%m-%dT%H:%M:%SZ”)}

#{topic.last_modified.strftime(“%Y-%m-%dT%H:%M:%SZ”)}

#{topic.author_name}

http://#{curdomain}/member/#{topic.author_name}

#{urlize(myimg(nl2br(topic.short_con)))}

]]>

是不是很想当然!

1,单行语句python代码 <?py   xxxxx  ?>

2,块Block语句 python代码

XXXXX

————————————————

3, 变量 #{}不含HTML Escape转换 和 ${} 含HTML Escape转换

4, 条件判断表达式必须和if, while ..等在一行写

5,Python代码的缩进必须是4个空格

6, <?PY ?>里是预编译的语句,这些语句只会被执行一次,里面的变量和函数不能被<?py ?>、#{}和${}所用,也不能使用<?py ?>和模板参数中的变量和函数。

7, #{{}}和${{}}用法和#{}、${}类似,但只能使用<?PY ?>中的变量和函数。

8, 子模板可以用include()函数载入。

调用生成hmtl字串和习惯很相象

engine = tenjin.Engine(path=[os.path.join(‘template’, THEME), ‘template’], cache=tenjin.MemoryCacheStorage())

return engine.render(template, context, globals, layout)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值