gpt4 book ai didi

python - 在 django 模板中处理 u'\x00'

转载 作者:太空宇宙 更新时间:2023-11-04 06:12:15 25 4
gpt4 key购买 nike

我的模型中的某些字段(通过 mysql 数据库)在访问时返回 u'\x00',我想在 django 模板中检测到这一点。这是我看到的:

(Pdb) patient.address.fax
u'\x00'

我正在尝试在模板中执行以下操作......

{% if person.address.fax != u"\x00"  %}
<abbr class="icon-print" title = "Phone"> </abbr> {{person.address.fax}} </br>
{% endif %}

上面的模板代码出现以下错误:

Could not parse the remainder: '"\x00"' from 'u"\x00"'

本质上,如果 person.address.fax = u'\x00',我不想打印传真号码。我该怎么做?

背景:

我使用 bcp 导出 MSSQL 数据库并将数据导入 MySQL。当我在 emacs 中查看从 MSSQL 导出的数据时,我在其中看到了一堆“^@”(不带引号)。导入此文件后,我怀疑此 ^@ 显示为\x00(NULL 字符?)。可能有一些方法可以防止 MSSQL 以不同的方式导出它,但这会使我的事情变得复杂,我宁愿得到上述问题的答案。

最佳答案

  1. Django 的模板将 unicode 视为字符串;您不需要 u 前缀。

  2. 您在导入时使用了错误的字符集;您需要先将字符集设置为 UTF-16LE。

  3. bcp “有帮助”输出 NUL 而不是原始字段为 NULL 的 CSV 中的空字符串;要么告诉 bcp 关闭它,要么执行 UPDATE 查询,将每个字段设置为 NULL,其中它等于 '\0'

关于python - 在 django 模板中处理 u'\x00',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18049532/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com