【问题标题】:Chameleon ZPT templates变色龙 ZPT 模板
【发布时间】:2012-01-13 16:50:59
【问题描述】:

我创建了一个 .pt 模板,其中包含以下 sn-p

<span class="help-block">
   ${password_confirm}
</span>

我的问题是,password_confirm 字段并不总是由金字塔框架呈现,所以它会显示下面的错误

chameleon.utils.NameError

NameError: password_confirm

我知道我想使用 tal:condition 但我尝试的一切都失败了。有人可以帮助我了解我应该如何处理不会总是在模板中呈现的变量。

【问题讨论】:

    标签: python templates pyramid chameleon


    【解决方案1】:
    <span class="help-block" tal:condition="exists:password_confirm">
       ${password_confirm}
    </span>
    

    应该工作

    【讨论】:

      【解决方案2】:

      也许你可以在 span 标签中添加tal:on-error="nothing"。然后,如果发生错误,将不会渲染整个 span。

      <span class="help-block" tal:on-error="nothing">
         ${password_confirm}
      </span>
      

      你可以用别的东西代替什么。

      更新:通常不建议使用这种方法,但在某些情况下可能非常简单。

      UPDATE2:另一种变体(未使用 Chameleon 进行检查)

      <span class="help-block" tal:condition="password_confirm|nothing">
         ${password_confirm}
      </span>
      

      【讨论】:

      • 可行,但我正在寻找类似 tal:omit-tag="not:bold 的东西
      • 不确定 omit-tag 在这种情况下如何工作。这只是意味着, 将被省略,但内容将被渲染。
      猜你喜欢
      • 1970-01-01
      • 2011-08-27
      • 2023-03-03
      • 2013-04-02
      • 1970-01-01
      • 2012-06-24
      • 2011-12-07
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多