方法
實例公開方法
localize(object, **options) 連結
委派給 I18n.localize
。
別名為:l
來源:顯示 | 在 GitHub 上
# File actionpack/lib/abstract_controller/translation.rb, line 36 def localize(object, **options) I18n.localize(object, **options) end
translate(key, **options) 連結
委派給 I18n.translate
。
當給定的金鑰以句點開頭時,它將由目前的控制器和動作限定範圍。因此,如果你從 PeopleController#index
呼叫 translate(".foo")
,它將把呼叫轉換為 I18n.translate("people.index.foo")
。這使得在同一個控制器/動作中翻譯多個金鑰的重複性降低,並提供了一個簡單的架構來一致地限定其範圍。
別名為:t
來源:顯示 | 在 GitHub 上
# File actionpack/lib/abstract_controller/translation.rb, line 15 def translate(key, **options) if key&.start_with?(".") path = controller_path.tr("/", ".") defaults = [:"#{path}#{key}"] defaults << options[:default] if options[:default] options[:default] = defaults.flatten key = "#{path}.#{action_name}#{key}" end if options[:default] options[:default] = [options[:default]] unless options[:default].is_a?(Array) options[:default] = options[:default].map do |value| value.is_a?(String) ? ERB::Util.html_escape(value) : value end end ActiveSupport::HtmlSafeTranslation.translate(key, **options) end