无法在Jinja2上获取模板

时间:2019-05-15 21:28:22

标签: python python-3.x jinja2

我正在尝试将2to3用作类似xml的语言的模板。

下面的代码是带有jinja2基本模板的这种语言的示例。此模板称呼一个孩子。

基本模板:

jinja2

子模板:

<?xml version="1.0" encoding="UTF-8"?> 
<!-- An NCL SlideShow example with embedded Jinja2 template -->
<ncl id="slideShow">
    <head>
        <connectorBase>
            <importBase documentURI="connectorBase.ncl" alias="conBase"/>
        </connectorBase>
        <regionBase>
            <region id="main" width="100%" height="100%" zIndex="1"/>
        </regionBase>
        <descriptorBase>
            <descriptor id="ImageDes" region="main"/>
        </descriptorBase>
    </head>
    <body>
        <port id="startSlideShow" component="image1"/>
        {% block medias %}
        {% endblock %}
    </body>
</ncl>

从python代码中,我尝试加载基本模板文件。

{% extends "slide_show.j2.ncl" %}
{% block media %}
    <media id="image1" src="media/WinterSun.jpg" 
descriptor="ImageDes"/> 
{% endblock media %}

但是,我在下面遇到此异常:

  

jinja2.exceptions.TemplateNotFound:slide_show.j2

1 个答案:

答案 0 :(得分:0)

发现FyleSystemLoader应该收到文件夹的完整路径,而不是相对路径。他们的文档不清楚。

loader = FileSystemLoader('fullpath/to/file')