Пример использования локали для многоязыкового сайта. Предположим, например, что создается сайт для 3-х языков: Русский, Английский и Украинский.
1. Прописываем в config/routes.rb
...
scope ':locale', :constraints => { :locale => /(ru|en|ua)/ } do
# тут любые маршруты
...
# отображение контент-страниц
get ':page' => 'application#page', :as => :page
root :to => 'application#index', :as => :locale_root
end
root :to => 'application#index'
2. В контроллере:
class ApplicationController
before_filter do
if params[:locale]
@locale = params[:locale].to_sym
I18n.locale = @locale if I18n.available_locales.include? @locale
else
I18n.locale = @locale = :ru
end
end
...
protected
# значения параметров в ссылке по-умолчанию
def default_url_options
{ locale: @locale }
end
end
Далее просто используем @locale для правильного отображения контента.
Пример использования локали для многоязыкового сайта. Предположим, например, что создается сайт для 3-х языков: Русский, Английский и Украинский.
1. Прописываем в config/routes.rb
2. В контроллере:
Далее просто используем @locale для правильного отображения контента.