如何处理Zope页面模板中的错误

时间:2012-08-16 16:50:04

标签: error-handling plone zope template-tal zpt

我正在寻找一种处理Zope页面模板错误的好方法。我所知道的是:

<div ... tal:define=...
         tal:on-error="string:Oops!">
  This text will be replaced in case of errors
</div>

<div ... tal:define=...
         tal:on-error="error/value">
  This text will be replaced in case of errors
</div>

<div ... tal:define=...
         tal:on-error="string:${error/type}: ${error/value}">
  This text will be replaced in case of errors
</div>

然而,可能需要使用更精细的错误处理方法,例如

  • 根据特定权限显示详细信息
  • 记录和/或向维护者报告错误
  • 有一个简单的方法来创建一些漂亮的HTML,而不需要模板中的大量代码

我查看了old Zope documentation page并创建了一个类似于那里描述的脚本对象(当然要修改缺少的冒号);但是,它不起作用(我尝试了on-error="here/errHandler"on-error="here/scripts/errHandler",我添加了*args**kwargs,但没有成功。)

我尝试为此目的构建一个浏览器(on-error="here/@@talerror"),并且它被正常使用,但它似乎没有得到error对象。

我正在使用Zope 2.10.7-final和Plone 3.3(旧的,我知道)。

有没有办法将error对象移交给浏览器,或者让脚本对象有效?

P.S。,只是为了弄清楚:这是关于在模板中广泛使用大量逻辑 - 请不要关于模板和逻辑的讲道!我的目标是在现有模板中找到错误,即逻辑的哪个部分( 在幕后某处,在浏览器等中实现)以哪种方式失败。记录的使用错误脚本的方法对我不起作用(也许我错过了一个重要的部分?),错误处理浏览器显然无法访问错误对象。

0 个答案:

没有答案
相关问题