mako的context及loop关键字(三)
2012-07-27 15:15 ubunoon 阅读(714) 评论(0) 编辑 收藏 举报mako的context是一个保留的名称,其包含了一些下面的方法
context[key]或者context.get(key,default=None),类似dict
keys 所有context中定义的名称
kwargs,返回一个context的dict变量,通常在传播变量时有用
write 写到缓冲区
lookup 返回一个TemplateLookup的实例。
Loop上下文(new in version 0.7)
在%for的block中,有一个保留字loop,便于迭代,如${loop.index}
无论如何形式的循环,loop都是基于0的迭代索引。
loop.index, loop.even, loop.odd, loop.first(用来表明是否为第一个迭代),loop.reverse_index, loop.last。
在0.7版本中,cycling可以在是否提供__len__方法中使用,
<ul>
%for item in ('spam', 'ham', 'eggs'):
<li class="${loop.cycle('even', 'odd')}">${item}</li>
%endfor
</ul>
loop.parent用来访问上一级的loop循环
在mako 0.7版本中loop成为保留字,为了兼容之前的,可以在TemplateLookup中屏蔽,enable_loop=False,或者在<%page>中使用 <%page enable_loop="True" />
下面是所有内建的关键字
context
local
self
parent
next
caller
loop
capture
UNDEFINED
pageargs
其中这几个是保留字 context, UNDEFINED, loop
*
* Copyright (c) 2011 Ubunoon.
* All rights reserved.
*
* email: netubu#gmail.com replace '#' to '@'
* http://www.cnblogs.com/ubunoon
* 欢迎来邮件定制各类验证码识别,条码识别,图像处理等软件
* 推荐不错的珍珠饰品,欢迎订购 * 宜臣珍珠(淡水好珍珠) */