Trac0.11.2.1.ja1でUnicodeDecodeErrorへの対応方法

 2009/01/08

Trac0.11.2.1.ja.1で、Iniadminプラグインを利用しようとすると、特定のメニューで、以下のようなエラーが表示された。

UnicodeDecodeError: 'ascii' codec can't decode byte 0xe3 in position 4: ordinal not in range(128)

pythonではよくあることのようなのだが、pythonでのデフォルトの文字コードがutf-8ではなくasciiとして認識されているのが問題である。

このエラーが出た場合は、何も考えず、/usr/lib/python2.4/site-packages/の直下に、以下の内容で、sitecustomize.pyというファイルを作成すること。

import sys
sys.setdefaultencoding("utf-8")

これによって、全てのpythonプログラムはデフォルトでutf-8のエンコーディングで動作する。

以下が参考になる。 http://d.hatena.ne.jp/SumiTomohiko/20070120/1169300624

 2009/01/08

著作

寄稿

Latest post: