gpt4 book ai didi

Python Django : displaying special characters in admin, 但不在我的网站上?

转载 作者:行者123 更新时间:2023-11-29 08:05:18 25 4
gpt4 key购买 nike

使用管理员:

我可以将这样的字符放入文本字​​段中:«æšʩЖあ☃»。然后,这些字符将在管理侧边栏上正确显示为“最近的操作”。

这告诉我,django 正在以某种方式查询我的数据库,其中这些字符被正确存储,然后正确表示。

使用 Views.py如果我在views.py中做这样的事情:

var = '«æšʩЖあ☃»'
render_to_response( ... bla bla bla
{'var':var} .. bla bla...)

它在我的网页上正确显示。

但是在我的 django 应用程序中,我有一些与数据库的手动连接,如下所示:myscript.py

con = mdb.connect('mysql.server','name','password','mydb')
cur = con.cursor(mdb.cursors.DictCursor)
cur.execute(
"""SELECT * FROM swimsets_swimset"""
)
container = cur.fetchone
myquery = container['column-name']

mylist.append(myquery)

views.py

 var = myscript.myfunction() # returns the mylist shown above
render_to_response(...{'var':var}...)

但是,它会将页面上的列表显示为 [\x8890\x923\等、\1313\23x\等 ]然后,如果我打印列表中的每一项,则绝对不会显示任何内容。

我尝试过的:

添加:con = mdb.connect('mysql.server','name','password','mydb',use_unicode=True, charset='utf8')

添加:# -*- 编码:utf-8 -*- (到 View 和 myscript.py)添加:DEFAULT_CHARSET = 'UTF-8'(到settings.py)

我已经阅读了无数的堆栈和大量文档,但我仍然无法理解。谢谢赞赏。 Python Django Encoding Error, Non-ASCII character '\xe5'

如果我这样做: var.decode('iso-8859-1').encode('utf-8')

它似乎显示了一些奇怪的字符,但这并不是真正的修复。我怀疑这就是 django 能够在管理侧面板中正确显示各种 unicode 的方式。

谢谢

最佳答案

好吧,我讨厌成为那个回答自己问题的人,但是这个问题确实让我禁足了好几天,我什至还有另一个堆栈问题,在它的回复为零后我删除了它。我对问题更加清楚了,希望得到更好的帮助,但相反,我已经足够清楚了,可以自己调试它!

让 Django 在网页上显示特殊字符而不是\x1231\d2314 的总体方法是:

添加: use_unicode=True, charset='utf8con = mdb.connect('mysql.server','name','password','mydb',use_unicode=正确,charset='utf8')

添加:# -*-coding: utf-8 -*-(到 View 和myscript.py)添加:DEFAULT_CHARSET = 'UTF-8'(到设置.py)

最后,将 unicode(var) 添加到 myscript.py,手动连接到数据库并将查询数据加载到 var 中。

关于Python Django : displaying special characters in admin, 但不在我的网站上?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22850012/

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