博多南ウェブサービスのblog

博多南ウェブサービスのサービス紹介

【Play Framework 2.8.x のフォーム入力サンプル】price にマイナスを入れたときのメッセージを日本語に

Play Framework を始めたばかりの方向けに、サンプルを進めるうえで困ったところを共有する目的で書いています。

Play Framework 2.8.x のScala 用フォーム入力サンプルに、 都道府県を選択するメニューを追加したときのメモです。

今回は、フォームのチェック時メッセージを日本語にしてみました。

以下、目次

前提

変更内容

  • conf/application.conf にplay.i18n.langs = ["ja"] を追加
  • conf/messages.ja 作成し、error.min, error.number=(メッセージ内容)を追加

結果

conf/messages.ja に追加した日本語メッセージが表示されました。

変更してみて

Play Framework 2.4 のドキュメントには、

メモ: RequestHeader が暗黙のスコープ内に存在する場合は、その Accept-Language ヘッダと MessagesApi の対応言語を考慮した上で適切な言語が決定され、使用されます。 テンプレートに @()(implicit messages: Messages) のように、暗黙のパラメータ Messages を追加する必要があります。

とあり、2.8 でもAccept-Language の内容で、確認するメッセージファイル(message.xx)が変更されるのを確認。

つまり、conf/application.conf にplay.i18n.langs = ["ja", "en"] と記載していた場合、 特段指定しなければ、Web ページを見たユーザーの Accept-Language ヘッダにより、 表示されるメッセージが選択されるということ。

メッセージは日本語化できたが、コンテンツの内容は自分で日本語を記載しないとだめ。 であるなら、日本語、英語のそれぞれのページは作る必要があり、 メッセージの日本語化はうれしいのか?

Heroku 公開はこちら

Githubこちら

以上でした。