更新:感谢Udi的建议,我打开了调试并更新了错误消息和我的模型
这是我的模特:
class booktitle(models.Model):
added_by = models.ForeignKey(User)
book_title_zh = models.CharField(max_length=255)
book_desc_zh = models.TextField(blank=True, null=True)
author_zh = models.CharField(max_length=255)
publisher_zh = models.CharField(max_length=255)
category = models.ForeignKey(category)
cover_img = models.ImageField(upload_to='books/book_img_cover', blank=True, null=True)
last_updated = models.DateField(auto_now=True)
date_added = models.DateField(auto_now=True)
class Meta:
ordering = ('-date_added',)
verbose_name = 'Book : 書本'
verbose_name_plural = 'Book : 書本'
我有一个标准的django安装。当我使用它上传带有中文字符的文件名时,它会显示以下错误:
UnicodeEncodeError at / admin / booksfair / booktitle / 6 /'ascii' 编解码器无法对字符进行编码 位置51-53:序数不在 range(128)请求方法:POST 请求 网址:http://www.mydomain.com/admin/booksfair/booktitle/6/ Django版本:1.4 pre-alpha SVN-16395例外 类型:UnicodeEncodeError异常 值:'ascii'编解码器无法编码 51-53位置的字符:序数 不在范围内(128)例外 位置:/usr/lib/python2.6/genericpath.py 在存在,第18行Python 可执行文件:/ usr / bin / python Python 版本:2.6.7 Python路径:
[ '/usr/lib/python26.zip', '/usr/lib/python2.6', '/usr/lib/python2.6/plat-linux2', '/usr/lib/python2.6/lib-tk', '/usr/lib/python2.6/lib-old', '/usr/lib/python2.6/lib-dynload', '/usr/lib/python2.6/site-packages', '/usr/lib/python2.6/site-packages/PIL', '/usr/lib/python2.6/site-packages/gtk-2.0', '/usr/lib/python2.6/site-packages/setuptools-0.6c11-py2.6.egg-info', '在/ var / WWW', '在/ var / www / html等/ Django的/网站', '/无功/网络/ HTML / django的']
我在这里找到了一些解决方案,但它对我的情况不起作用,这不是一个重复的帖子。谢谢。
答案 0 :(得分:0)
由于设置不正确,您的错误消息无效。
DEBUG=True
并检查错误消息。(由于您应该收到一条完全不同的错误消息,请在新问题中再次发布新错误消息,而不是更新此问题。谢谢。)