1

ユーザーが単語を入力できるテキストボックスがあります。

The user enters: über

バックエンドでは、次のような単語が表示されます。

def form_process(request):
    word = request.GET.get('the_word')
    word = word.encode('utf-8')
    #word = word.decode('utf-8')
    print word

どういうわけか、これをデコードまたはエンコードできません!! それは私にエラーを与えます:

 UnicodeEncodeError
 ('ascii', u'\ufffd', 0, 1, 'ordinal not in range(128)')

編集:「repr(word)」を実行すると、次のようになります。

u'\ufffd'
4

3 に答える 3

1

入れたことを覚えていましたか:

accept-charset="utf-8"

フォームタグで?

編集: settings.py の DEFAULT_CHARSET は 'utf-8' に設定されていますか?

于 2010-01-06T01:20:22.120 に答える
1

解決しました!

サーバーに渡す前に、javascriptにエスケープ(単語)がありました。

于 2010-01-06T01:43:21.310 に答える
0

プリントワードを使用する理由はありますか? そうでない場合は、それらの行がなくても機能するはずです。

def form_process(request):
    word = request.GET.get('the_word')
于 2010-01-06T01:44:49.833 に答える