0

Railsアプリを初めてローカライズしているところですが、これをもっと短く言う方法があるのではないかと思います。

flash[:success] = t('.views.person.flash_messages.person_was_successfully_updated')

これは私のde.ymlファイルの抜粋です:

de: 
  views:
    person:
      flash_messages:
        person_was_successfully_updated: "Person aktualisiert."

私はこのようなことを言うのをやめます:

flash[:success] = t('person_was_successfully_updated')

しかし、私がそうしようとすると、Railsは私にエラーを与えています。

person_was_successfully_updated私のファイルでは絶対に一意で.ymlあり、毎回パス全体を入力する必要がないため、理由がわかりません。これもあまり乾燥していません。

何か案は?

4

1 に答える 1

2

私はこのようなことを言うのをやめます

person_was_successfully_updated直接電話をかけたい場合は、それを最初のレベルに置く必要があります。つまり、deの下で: ..

しかし、私がそうしようとすると、Railsは私にエラーを与えています。

person_was_successfully_updatedはい、ルートレベルにはないため、間違いなくエラーが発生します。

詳細については。http://guides.rubyonrails.org/i18n.html

于 2013-01-26T15:12:45.420 に答える