2

私はGroovy/Grailsを初めて使用し、現在、概念実証としてプロトタイプを開発しています。Grailsに組み込まれているi18n機能を使用して言語を切り替えようとしています。これを行うために、プロパティファイルでメッセージバンドルを使用しています。

ディレクトリmessages_cy.propertiesの下に(ウェールズ語で)作成しました。URLの最後に追加すると、すべて正常に機能しているようです。i18n?lang=cy

ただし、ホームページ(現在はデフォルトのWelcome to Grailsページ)に移動すると、ロケールが「en」に戻り、別のページに移動すると、以前の状態に戻ります。

私は現在、コントローラーとビューを作成している動的な足場を使用していますが、これはおそらく最終的には変更されるでしょう。これが問題の原因かどうかはわかりません。ホームページ(index.gsp)は、動的にスキャフォールディングされていない唯一のページです。

誰かがこれに光を当てることができますか?ありがとう。

4

1 に答える 1

0

を作成してこれを解決しHomeController、UrlMapping.groovy を使用してHomeコントローラーをルート URL にマップしました。

HomeController.groovy

import org.springframework.web.servlet.support.RequestContextUtils as RCU

class HomeController {
def index() {
  def newLocale = RCU.getLocale(request)
  RCU.getLocaleResolver(request).setLocale(request, response, newLocale)
 }
}

UrlMappings.groovy

"/"(controller:'home',action:"index", view:'/index')
于 2013-02-14T08:27:20.287 に答える