morepath的变色龙模板集成

more.chameleon的Python项目详细描述


more.chameleon:morepath的chameleon模板集成

more.chameleon是添加zope页的Morepath的扩展 模板(zpt)支持.pt扩展,使用Chameleon 模板引擎。

有关zpt模板语言的详细信息,请参见Chameleon language reference

示例用法:

from more.chameleon import ChameleonApp

class App(ChameleonApp):
    pass

@App.path(path='persons/{name}')
class Person(object):
     def __init__(self, name):
         self.name = name

@App.template_directory()
def get_template_directory():
    return 'templates'

@App.html(model=Person, template='person.pt')
def person_default(self, request):
    return {'name': self.name}

然后在person.pt(在templates子目录中):

<html>
<body>
<p>Hello ${name}!</p>
</body>
</html>

在开发过程中,让变色龙重新加载模板是有帮助的。 更改后自动执行。要启用此功能,请使用 MOREPATH_TEMPLATE_AUTO_RELOAD环境变量。

您可以为您的流程启用它:

MOREPATH_TEMPLATE_AUTO_RELOAD=1 python run.py

或者你的贝壳:

export MOREPATH_TEMPLATE_AUTO_RELOAD=1
python run.py

要进一步控制变色龙渲染,可以定义chameleon设置 你的应用程序中的部分。例如,你如何打开变色龙的 debug功能:

@App.setting_section(section='chameleon')
def get_setting_section():
    return {'debug': True}

有关变色龙配置选项的详细信息,请参阅 Chameleon API reference中的配置关键字参数。

变化

0.2(2016-01-23)

0.1(2015-04-09)

  • 首次公开发行。

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

推荐PyPI第三方库


热门话题
java Android:在ListView上使用setOnItemClickListener   使用Netbeans 7.0连接到SQL Server的java正在挂起   java Spring3依赖项注入不适用于mule   java Flink SQL结果字段与LocalDateTime上请求的类型错误不匹配   java找不到文件的结尾   考虑到NamingStrategy,java有没有办法将字符串转换为JsonNode?   使用Netbeans/ant部署java(命令行)应用程序   java如何修复Spring引导多部分上载中的“所需请求部分不存在”   java在应用程序启动时通过引用获取映射未知目标实体属性异常   java形状旋转问题Java2d   Weblogic服务器上的java ExecuteAndWaitInterceptor问题   JavaSpringBoot:project将图像保存在错误的路径中,并且在使用IDEIntellji打开时不显示图像   类向java接口添加方法   Swing组件上的Java 7泛型   sql server如何从java获取用户名。sql。联系   java如何检查该行是否与正则表达式(regex)冲突?   java如何在spring引导安全中为计数失败登录设置验证登录为false   图像如何在Java中使PNG的白色透明?