0

我有一个 Django 应用程序,它运行一个工具并使用 Django 模板将工具的结果显示给用户。有时 Django 不显示结果。它不抱怨任何事情,只是不显示结果。我猜这与结果中的一个或多个字符有关,就 Django 而言是非法的。我怎样才能获得更多关于 Django 不喜欢什么的信息?另外,有什么方法可以用来过滤掉“坏”字符吗?结果通常只是很多文本。它们包含公司机密的东西,所以很遗憾我不能举个例子。我将 DEBUG 设置为 True 并将 TEMPLATE_DEBUG 设置为 DEBUG。

更新:

我添加了一些代码来过滤掉所有十进制值大于 127 的字符,现在它可以工作了。

4

2 回答 2

1

如果您使用的是开发服务器,请使用 pdb 设置断点并查看发生了什么。或者打印出你认为有“坏”字符的字符串。如果您不使用开发服务器,您可以使用 Python 日志记录模块来记录您从该工具获取的字符串。

您可能会对包含错误字符的数据得出结论。它可能是别的东西,如果不进一步调试,很难推测。

于 2010-06-21T15:56:54.077 回答
0

您可以尝试使用内置的 django 编码方法来删除非法字符。

from django.utils.encoding import smart_str

smart_str(your_string)
于 2010-06-21T12:52:55.783 回答