现在我的rails应用程序适用于两种语言。 Eng和Rus。
但是app现在不代表网址中的语言:example.com/posts
适用于eng和rus,但我需要example.com/ru/posts
并定期使用英文版example.com/posts
我该怎么做?
路线档案:
root 'static_pages#home'
get 'about' => 'static_pages#about'
get 'contact' => 'static_pages#contact'
get '/change_locale/:locale', to: 'settings#change_locale', as: :change_locale
答案 0 :(得分:4)
Rails guides涵盖了此案例并提供了示例。
# app/controllers/application_controller.rb
def default_url_options(options = {})
{ locale: I18n.locale }.merge options
end
# config/routes.rb
scope "(:locale)", locale: /en|ru/ do
resources :books
end
get '/:locale' => 'your_root#page_action'