play frameworkで多言語化する①
playでは言語の検出を以下の順番で行う。
- ①
Context
のlang
に値が設定されている場合は使用する。 - ②Cookie内の
PLAY_LANG
に値が設定されている場合は使用する。 - ③リクエストヘッダの
Accept-Language
に値が設定されている場合は使用する。 - ④アプリケーションのデフォルト言語を使用する。
ということで、手っ取り早く多言語化して、ユーザー毎に言語を設定したい場合、
②を使用する。
何かしらのイベントで以下のスクリプトを実行してCookieを書き換えればよい。
// クッキーを設定
document.cookie = "PLAY_LANG=" + "ja";
参考ページ(https://www.playframework.com/documentation/2.6.x/JavaI18N)