1

ユニコードを使用してエラーをスローしているフォームをレンダリングするためのパーシャルがあります。エラーを次の行に絞り込みました。

<input name='q' value='#{request.params['q']}' />

私が行くと、localhost/thepath?q=中文それがスロー されます

Encoding::CompatibilityError at /thepath/
incompatible character encodings: ASCII-8BIT and UTF-8

しかし

<input name='q' value='中文' />

正常に動作し、リクエストに含まれていない値からのすべての Unicode 文字列も正常に動作します。

4

1 に答える 1

2

1 つの解決策は、入力を で洗浄する#force_encodingことです。より望ましい方法はありますか?

于 2010-12-05T18:29:24.137 に答える