2011/02/28

HTML::Shakanで文字化けしない方法

VERSION

関連モジュールのVERSIONは以下の通り
HTML::Shakan 0.09
Formvalidator::Lite 0.23

対処方法

先に現状での対処方法を書きます

HTML::ShakanのField定義はbinary stringsで行う

但し、この対処方法では以下の状態になる

  • $form->get_error_messagesはtext strings
  • $form->renderはbinary strings
  • use utf8しない状態なのが気持ち悪い

文字化けの原因

Shakanで使用するField定義データにtext stringsを使用すると、HTML生成時にbinary stringsと結合されるため文字化けが発生する

各モジュールの文字列の扱い

FormValidator::Lite

  • FV::L::Message::jaはuse utf8しているのでtext strings

HTML::Shakan

  • 内部でencode, decodeはしない
  • HTML生成時はbinary stringsとField定義データ、requestデータとの結合

希望の動作

  • Field定義はtext stringsで行いたい
  • $form->renderはtext stringsを返す
  • $form->get_error_messagesもtext stringsを返す

0 件のコメント:

コメントを投稿