初めまして、木虎と申します。
> Play.1.2.4 を使って、モバイルサイトの構築を試みています。
> レンダリングされるHTMLをShift-JISにするために、 application.conf へ下の定義を追加しました。
> application.web_encoding=Shift-JIS
>
> form からpostした値を確認すると文字化けしています。
> 「あいうえお」や「漢字」は化けていませんが、「記号」や「①」は文字化けしていました。
>
>
> http://playdocja.appspot.com/documentation/1.2.3/controllers#encoding
> を参考に form タグのaccept-charset 属性と、hiddenタグで _charset_ を
> 指定する方法を試しましたが、駄目でした。
試していないのでわかりませんが、"Shift-JIS" ではなく "Shift_JIS" と指定してもダメでしょうか?
"Shift-JIS" は正確な表記ではないため、とりあえず気になった次第です。
http://ja.wikipedia.org/wiki/Shift_JIS
① は NEC 特殊文字なので "Windows-31J" (こちらはハイフンです) と指定しないといけないかもしれません。
http://ja.wikipedia.org/wiki/Microsoft%E3%82%B3%E3%83%BC%E3%83%89%E3%83%9A%E3%83%BC%E3%82%B8932
# "EUC-JP" は "-" (ハイフン) なんですけどね。
--
Kitora, Naoki <naoki....@gmail.com>
twitter: http://twitter.com/kitora_naoki
木虎です。
> UrlEncodedParser を変更してみると、文字化けしないようになりました。
> 「①」の記号はエンコードに"Windows-31J"か"MS932"を指定することで、文字化けしませんでした。
解決したようで良かったです。
UrlEncodedParser の変更箇所の共有もありがとうございます。勉強になりました。