我在 django admin 中书写克罗地亚语字母时遇到问题。
这是我得到的错误:
'ascii' codec can't encode characters in position 13-14: ordinal not in range(128)
我对设置进行了更改:
设置.py
LANGUAGE_CODE = 'hr-HR'
LANGUAGES = (
('hr', 'Hrvatski'),
)
DEFAULT_CHARSET = 'UTF-8'
这会将 django-admin 翻译为克罗地亚语,但 Django 仍然不排除克罗地亚语字母。
我将其添加到 models.py、views.py 和 admin.py 之上
# -*- coding: utf-8 -*-
我在模型中将 __str__
更改为 __unicode__
模型.py
class Book(models.Model):
title = models.CharField(max_length=200)
description = models.CharField(max_length=300)
def __unicode__(self):
return u'%s %s' % (self.title, self.description)
更改我的 models.py 后,诸如 č,ć,đ 之类的字母变成了 ?,?,?
这是我在 master.html 中为模板放置的内容:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
我错过了什么?有人可以给我提示吗?
感谢您的宝贵时间。
最佳答案
确保您的数据库使用 UTF-8。创建MySQL数据库时可以指定UTF-8:
CREATE DATABASE <dbname> CHARACTER SET utf8;
参见the docs了解更多信息。
关于python - Django 管理员不接受拉丁字母,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33648801/