次のいずれかを行う方法を探しています。
- ビューと同じ名前と相対パスを持つ .yml ロケール ファイルを使用するビューを作成します (たとえば、/app/views/thingie/ blah.html.erbがレンダリングされると、/config/locales/thingie/blahで変換されます)。 /.yml )
- ビュー内から、使用する翻訳ファイル/ディレクトリを宣言します。
そのための良い解決策はありますか?
ありがとう :)
次のいずれかを行う方法を探しています。
そのための良い解決策はありますか?
ありがとう :)
より短い構文があります。コントローラーが「ユーザー」で、「インデックス」アクションをレンダリングしているとしましょう。.nameofthekey
を探すキーを使用できますuser.index.nameofthekey
。それがあなたが望んでいるように思えます。それ以外の場合は、ローカライズされたテンプレートを使用できます。
これらの詳細については、 http: //guides.rubyonrails.org/i18n.htmlを参照してください。
コントローラーで直接ビューからではなく、翻訳からテキストまたは html をレンダリングできます。
class PagesController < ApplicationController
def home
render :html => t(:'views.pages.home.body.html')
end
end
ここにはまったくビューが含まれていません。静的コンテンツページなどに非常に役立ちます:)