用于morepath的jinja2模板集成

more.jinja2的Python项目详细描述


more.jina2:jinja2用于morepath的模板集成

more.jina2Morepath的扩展,它添加了Jinja2 使用.jinja2扩展时的模板支持。

有关jinja2模板语言的详细信息,请参见Jinja2 template designer documentation

示例用法:

from more.jinja2 import Jinja2App

class App(Jinja2App):
    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.jinja2')
def person_default(self, request):
    return {'name': self.name}

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

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

注意,jinja2文档使用.html扩展名 jinja2模板,而这个扩展使用.jinja2

要控制jinja2行为,可以定义一个jinja2设置节 在你的应用程序中。例如:

@App.setting_section(section='jinja2')
def get_setting_section():
    return {
      'auto_reload': False,
      'autoescape': True,
      'extensions': ['jinja2.ext.autoescape']
    }

有关jinja2配置选项的详细信息,请参阅Jinja2 API documentation

变化

0.2(2015-04-09)

  • 实际释放到pypi。

0.1(2015-04-09)

  • 首次公开发行。

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

推荐PyPI第三方库


热门话题
使用多个参数的枚举   从Oracle到Redis的java复制表   java如何保护tomcat服务器中的db用户名和密码。xml   java如何使用注册密钥保护移动应用程序?   java在什么情况下超类不应该是抽象的?   java Backspace键在macOS上的Scala REPL中不起作用   arduino Java+Uno+RFID:调用方法读取Java中的RFID   带有where语句中集合的java JPA查询   java如何向基于Tyrus注释的客户端添加请求头   java对我的二进制搜索算法的反馈   java重新访问数据库时文件的内容不正确   用户在字符串中输入值后退出While循环(Java)   java如何在Maven中的多个项目之间共享项目依赖关系?   java Close从未在数据库上被明确调用   在java中从文件读入布尔矩阵   Java:如何使用父节点将XML流拆分为小型XML文档。VTDXML