本模块提供了一个装饰器,可以轻松地使用Jinja2模板和Cherry Py!

Jinja2Loader的Python项目详细描述


这个包将用于需要快速 以及从文件系统加载模板的简单方法。

导入和设置

为了正确使用这个模块,您必须导入它,然后设置 模板目录。模板目录最初设置为 os.path.join(os.getcwd(),'templates')

如果您的模板存储在“./templates/”中,则只需导入此 模块。

import jinja2loader

但是,如果模板位于另一个目录结构中,则 需要导入模块,然后设置模板模板目录。一个 已经创建了helper函数来允许此操作,您可以通过调用 jinja2loader.set_template_directory('template_directory')

import jinja2loader
jinja2loader.set_template_directory('../resources/templates')

加载模板

此函数包装一个应用程序方法,该方法返回 对于模板的上下文,此装饰器接受一个参数,即 要传递到环境的模板名称。获取模板(模板名称) 使用此装饰器时,您需要从应用程序中执行的所有操作 函数返回要传递到模板中的上下文。在 此外,您需要将模板名指定为 类似于@load\u template('template\u name.html') 请参阅下面的示例,其中使用 环境。获取模板(模板名称)

class Application(object):
    @cherrypy.expose
    @load_template('test.html')
    def index(self):
        context = {'name': 'derp',
                   'name_list': ['bleep',
                                 'blerp',
                                 'herp']}
        return context

上面的示例将导致呈现模板“test.html” 使用函数application.index()中的上下文 如果没有像下面的示例中的上下文那样传入任何内容,则 decorator方法将自动将其替换为空的dict 在调用渲染之前。

@load_template('test.html')
def index(self):
    return

上面的示例将返回“test.html”模板,这对于 加载和返回不需要上下文的静态页。

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

推荐PyPI第三方库


热门话题
如何使用java向dropup html/css添加项目   如何从java中的向量向量打印   Java Maven库项目模板   java使用atmosphere api还是直接使用grizzly?   java JComponent仅部分显示   如何将动态值传递给自定义注释,以从Java数据进行映射。性质   java破解已实现方法的返回类型的最佳方法?   java Netbeans在JFrame Gui布局中覆盖图像   spring java仅向登录用户显示注销按钮   java如何对com进行身份验证。谷歌。云bigquery。带有服务帐户的BigQuery`   java禁止空字符串参数和抛出RuntimeException以阻止方法继续的利弊   java分析项目中的所有JAR以获取版本和许可证信息   Java,数据库为什么要分配一个新对象,而我们可以直接将它放入数据库