いま時のWeb開発で「i18n」は基本である。どうやら(謎の倒置法 まず、CakePHPでの一般的な国際化(i18n)については 「CakePHP1.2の簡単国際化 」がとても参考になりました。(1.3でも問題なかったです 上記の記事内のステップがすべて完了すれば コントローラ内の"__()"で囲まれた部分はすべて国際化されます。 しかしモデル内、特にバリデーションのエラーメッセージには "__()"が使用できないため"cake i18n"コマンドで抽出できずに英語のままです。 今回はこの部分をシンプルに日本語化する方法を書きます。 色々やれば抽出させることも可能ですが、色々やらなくてはなりません。 はじめにapp_model.phpに数行のソースを追加しておきます。 //app_model.php function invalidate($field, $value = true) {
![CakePHP - バリデーションのエラーメッセージをシンプルに国際化(i18n)する方法 - たきゃはしです](https://cdn-ak-scissors.b.st-hatena.com/image/square/71f8d6236fd5a555a0c5220f20866facbe9ad391/height=288;version=1;width=512/http%3A%2F%2Fcdn-ak.f.st-hatena.com%2Fimages%2Ffotolife%2Fy%2Fy_guriko%2F20110329%2F20110329173847.jpg)