Python Django中的Unicode错误

Python Django中的Unicode错误,python,django,django-models,django-admin,Python,Django,Django Models,Django Admin,我试图在包含unicode字符串的数据库中实现CRUD。以下是模型: from django.db import models class Category(models.Model): cat_name = models.CharField(max_length=100, verbose_name="Category Name") def __unicode__(self): return self.cat_name class Translation(

我试图在包含unicode字符串的数据库中实现CRUD。以下是模型:

from django.db import models


class Category(models.Model):
    cat_name = models.CharField(max_length=100, verbose_name="Category Name")

    def __unicode__(self):
        return self.cat_name

class Translation(models.Model):
        english_term = models.TextField(verbose_name="English Term")
        bangla_term = models.TextField(verbose_name="Bangla Term")
        bangla_variant = models.TextField(verbose_name="Variant")
        parts_of_speech = models.TextField(verbose_name="Parts of Speech")
        category = models.ForeignKey(Category, verbose_name="Category")

        def __unicode__(self):
            return self.english_term
默认情况下,Django使用拉丁瑞典语ci或其他语言创建数据库和表。我已经手动将数据库和表转换为utf8 unicode ci(很抱歉,我知道排序规则名称搞错了)

我已经在我的管理区注册了模型。当我尝试将任何条目添加到模型中时,我得到一个错误:

Warning at /admin/glossary/category/add/

Incorrect string value: '\xE0\xA6\x97\xE0\xA6\xA8...' for column 'cat_name' at row 1
有什么帮助吗

问候

试试看

def __unicode__(self):
    return u'%s' % self.cat_name

在您的类别模型中。

您可能希望使用utf8编码重新创建数据库,或者检查客户端和服务器端的已配置编码。Django不创建数据库,您的责任是创建一个数据库并在Django设置中为Django连接设置正确的参数。唯一的例外是sqlite3后端,它总是使用utf8。

重新创建数据库有效。虽然我在:s之前手动将db转换为unicode