Grails > 多言語化

更新日 2014-11-07
広告

Grailsでは、grails-app/i18n/ 以下に、各言語の messages.properties ファイルを用意することで、簡単に多言語化できます。

例えば、OSが ja_JP を使用している場合、i18n以下に messages_ja_JP.properties という名前でファイルを用意します。 OSの言語設定は locale コマンドで確認できます。

言語に対応するファイルが見つからない場合、messages.properties ファイルの内容が利用されます。

default.add.label=Add {0}
例えば、上のようなプロパティを設定している場合、コントローラからは以下のように利用できます。
message(code: "default.add.label", args: ["Data"])
ビュー(.gspファイル)からは、以下のように利用できます。
<g:message code="${default.add.label}" args="['Data']">

こうしておけば、messages_xx_YY.properties ファイルを用意するだけで、英語や日本語などの各言語に対応させることができます。

デフォルトのlocale

でフォルトで使用する言語を指定する場合は、grails-app/conf/spring/resources.groovy に、以下のような設定をします。

// Place your Spring DSL code here
beans = {

  // init locales
  localeResolver(org.springframework.web.servlet.i18n.SessionLocaleResolver) {
    //defaultLocale = new Locale("en","US")
    defaultLocale = new Locale("ja","JP")
    java.util.Locale.setDefault(defaultLocale)
  }

}
上の例だと、日本語を使います。コメントアウトしてあるほうは英語です。
広告
お問い合わせは sweng.tips@gmail.com まで。
inserted by FC2 system