2011-02-08 42 views
2

我最近將DjangoCMS項目從2.1.0beta3升級到2.1.0 final,並且在頁面編輯期間我開始出現Unicode錯誤。 有大量的生產內容與南方遷移 。我在使用TinyMCE時遇到了錯誤,我試圖將 插入另一個插件(如圖像)到文本插件中,或者當我嘗試將插件添加到佔位符時。升級到2.1.0後的Unicode錯誤最終

網址:
/管理/ CMS /頁/ 188 /編輯插件/ 673 /編輯插件/ 676/

堆棧跟蹤:

File "/srv/wsphp/wspython/virtualenv/iaffe-prod/lib/python2.6/site-packages/django/template/__init__.py", line 849, in render 
    return _render_value_in_context(output, context) 

File "/srv/wsphp/wspython/virtualenv/iaffe-prod/lib/python2.6/site-packages/django/template/__init__.py", line 829, in _render_value_in_context 
    value = force_unicode(value) 

File "/srv/wsphp/wspython/virtualenv/iaffe-prod/lib/python2.6/site-packages/django/utils/encoding.py", line 88, in force_unicode 
    raise DjangoUnicodeDecodeError(s, *e.args) 

DjangoUnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 12: ordinal not in range(128). You passed in <django.forms.forms.BoundField object at 0xb73cedec> (<class 'django.forms.forms.BoundField'>) 

如果我反覆嘗試創建插件,ID(676這裏)增量, 所以它看起來像錯誤發生時,表單呈現。此 會影響鏈接,圖片和預告片插件,但不會影響文字,文件或片段插件。

我會很感激在這裏孤立原因的任何幫助。

感謝,
邁克爾

回答

0

事實證明,這是一個數據遷移問題。最終的解決方案是使用類似命令強制在相關的mysql表中使用utf8編碼:

alter table cms_page convert to character set utf8; 
0

位一晚的答案,但我有一些問題與Unicode和與defining source code encodings解決了還看到http://evanjones.ca/python-utf8.html

我把

# -*- coding: utf-8 -*- 

頂部有問題的文件和一切都被排序。

+0

謝謝。但是,該問題完全在Django或DjangoCMS代碼中,因爲特定頁面在管理員中。我最終通過修復數據庫本身的編碼來解決問題。 – 2011-03-03 22:59:07