rails:957
From: "manabu togawa" <togawamanabu@g...>
Date: Mon, 20 Feb 2006 12:25:40 +0900
Subject: [rails:957] Re: ロケールによるテンプレートの切り替え
ゆうきさん。すばらしいです。 プラグインの形でこのようにかけるのですね。 ありがとうございました。すごく便利です。 06/02/18 に Yugui<yugui@y...> さんは書きました: > On Mon, 13 Feb 2006 16:25:43 +0900 > manabu togawa <togawamanabu@g...> wrote: > > render :template => _('aboutus') > > みたいな形にして、jpのテンプレート名を'aboutus_jp'などしてあげれば、できそうなのですが、どうせなら、Renderする時点でロケールのテンプレートを自動的に探してくれるように拡張できないかなと思ったのです。 > > railsの国際化対応はなんだか色々あってよく把握しておりませんが、重複を恐 > れずに適当に実装してみました。 vendor/localize_templates/init.rbに下記を > 置きますと、仰るような挙動になると思います。 > > --vendor/localize_templates/init.rb: > > ActionController::Base.class_eval do > alias render_file_without_locale render_file > private :render_file_without_locale > > def render_file_with_locale(template_path, status = nil, use_full_path = false, locals = {}) > locale_components = locale.split('_') > until locale_components.empty? > localized_path = template_path + "_" + locale_components.join('_') > return render_file_without_locale(localized_path, status, use_full_path, locals) if template_exists? localized_path > > locale_components.pop > end > render_file_without_locale(template_path, status, use_full_path, locals) > end > alias render_file render_file_with_locale > > def locale > params[:locale] or '' > end > end > > > -- > ゆうき or Yugui > yugui@y... > http://idm.s9.xrea.com > > -- > ML: rails@r... > 使い方: http://QuickML.com/ > -- ML: rails@r... 使い方: http://QuickML.com/
934 2006-02-13 06:57 [togawamanabu@g... ] ロケールによるテンプレートの切り替え 935 2006-02-13 07:38 ┣[kazuhiko@f... ] 936 2006-02-13 07:42 ┗[shachi@j... ] 937 2006-02-13 08:25 ┗[togawamanabu@g... ] 953 2006-02-18 09:42 ┗[yugui@y... ] -> 957 2006-02-20 04:25 ┗[togawamanabu@g... ] 965 2006-02-26 10:33 ┗[yugui@y... ]