2012-04-05 4 views
2

ユーザがフォームデータを送信したときに、以下のようなユニコードエラーが私のdjangoサイトに表示されることがあります。djangoでユニコードエラーを再現

" 'ASCII' コーデックが文字をエンコードすることはできませんuは位置109で 'u2014を\':序ない範囲内(128)"

どのように私は私のシステムではUnicodeのエラーが

多く再現することができますありがとう。

答えて

5

エラーの原因となるフォームをユニコード文字(例:é)で送信してください。

これはDjangoプロジェクトの非常に一般的なエラーです。ほとんどの場合、str()をどこかで呼び出すことを意味します。 Djangoは内部的にUnicode文字列を使いますが、str()を呼び出すと、PythonにASCII文字列を返すように要求しています。これはこのメッセージで失敗します。

詳細をお知らせいただければ、さらにお手伝いさせていただきます。

幸運を祈る!

+0

あるいは、あなたは(黙示的に) '__unicode__'メソッドの中で' str'を返しています。 –

2

ビューにデバッグプリントを残しましたか?これにより、コンソールのエンコーディングに変換され、このエラーが発生することがあります。

関連する問題