Rails可选/:语言环境路由
我正在尝试为我的rails应用程序设置路由系统,允许将可选路由(/:locale)允许到网站的基础。
所以或多或少:
/ en / home /将转到与/ home / / en / people / – > / people /相同的页面
我唯一的问题是在路由配置中设置它。
使用scope '(:locale)' do
… end
。 您可以在此处查看Agile Web Development with Rails中的示例:
http://intertwingly.net/projects/AWDwR4/checkdepot-30/section-15.1.html
我通常在config/routes.rb
做的是:
MyApp::Application.routes.draw do scope "(:locale)", :locale => /en|fr/ do #here only two languages are accepted: english and french end end
在我的ApplicationController
:
before_filter :set_locale def set_locale I18n.locale = params[:locale] || "en" end