我想在瓶子模板中添加一个可选的包含项.

不幸的是,这并不像预期的那样工作:

<foo>

    % include(required_view)

    <%
        try:
            include(optional_view)
        except NameError:
            pass
    %>

</foo>

它确实进行了可选的导入,但在此之后停止.
(因此结果中缺少</foo>.)

我想允许未定义变量optional_view.
总是将'optional_view': None添加到上下文中会很烦人.
(更不用说总是添加空视图了.)

推荐答案

缺少END关键字.这是可行的:

<foo>

    % include(required_view)

    <%
        try:
            include(optional_view)
        except NameError:
            pass
        end
    %>

</foo>

正确的答案是this followup question分.

引用瓶子文档中的大约embedded Python code条:

请注意,%<% %>的工作方式完全相同.后者只是一种方便的方式,可以减少输入并避免较长代码段的混乱.这意味着在<% %>块中,所有缩进代码必须以end结尾.

Python相关问答推荐

在for循环中保存和删除收件箱

Pandas数据帧处理Pandas表中Json内的嵌套列表以获取后续Numpy数组

如何将 map 数组组合到pyspark中每列的单个 map 中

Pandas read_jsonfuture 警告:解析字符串时,to_datetime与单位的行为已被反对

Polars Select 多个元素产品

过滤绕轴旋转的螺旋桨

如何在PIL、Python中对图像应用彩色面膜?

在matplotlib动画gif中更改配色方案

通过仅导入pandas来在for循环中进行多情节

如何从具有多个嵌入选项卡的网页中Web抓取td类元素

具有多个选项的计数_匹配

基于字符串匹配条件合并两个帧

如何在Python脚本中附加一个Google tab(已经打开)

Pandas—合并数据帧,在公共列上保留非空值,在另一列上保留平均值

为什么Django管理页面和我的页面的其他CSS文件和图片都找不到?'

如何使用Numpy. stracards重新编写滚动和?

numpy.unique如何消除重复列?

ruamel.yaml dump:如何阻止map标量值被移动到一个新的缩进行?

Python—压缩叶 map html作为邮箱附件并通过sendgrid发送

具有相同图例 colored颜色 和标签的堆叠子图