python - 如何判断手动渲染 Django 模板时是否存在渲染错误?

标签 python django templates

我正在使用 Django 模板系统来处理某些表单电子邮件,最终用户可以编辑模板。

模板的 render 方法返回渲染的内容并默默地传递无效的变量和标签。有没有合理的方法来判断渲染过程中是否出现错误?

我正在考虑将 settings.TEMPLATE_STRING_IF_INVALID 设置为唯一字符串,然后测试该字符串是否存在,但这会影响正常的模板渲染,这是 Not Acceptable 。我扫描了 Django 的源代码,希望有一个“渲染无效变量/标签”方法,我可以干净地重写以引发异常,但没有这样的运气。

有什么想法吗?

最佳答案

可悲的是,围绕这样的问题进行黑客攻击是最好的解决方案。应该注意的是,该变量名为 TEMPLATE_STRING_IF_INVALID 顺便说一句。

或者,我建议将 Jinja2 与 Coffin 一起使用,这也使调试变得更加容易,而且 Jinja2 实际上确实为此类错误提供了正确的堆栈跟踪。

关于python - 如何判断手动渲染 Django 模板时是否存在渲染错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20909383/

相关文章:

python - 使用蓝图的 Flask URL 路由不起作用,返回 404 http 代码

python - 有没有更Pythonic的方法来进行这个字典迭代?

c++ - 具有不同模板参数的模板对象的集合

c++ - 在gcc或clang中调试SFINAE

java - Python 服务器没有从 Java 客户端接收到完整的字符串

python - 在 Windows 中切换 python3 解释器

django - 连接到位于 "localhost"的服务器,端口 5432 失败 : Connection refused Is the server running on that host and accepting TCP/IP connections?

Django Queryset 到 dict 以在 json 中使用

python - 如何获取异常字典信息?

c++ - 对显式实例化模板函数的 undefined reference