【发布时间】:2014-10-20 20:44:26
【问题描述】:
我有一个使用 Rails I18n API 创建的多语言 Rails 网站,其 URL 类似于
“example.com/en/about”或“example.com/de/about”或“example.com/en/contact”
等等
这可以正常工作,但我希望如果用户访问“example.com/about”(URL 中没有语言部分),他将被重定向到默认语言的相应页面,例如到“example.com/en/about”
我的 config/routes.rb 看起来像:
Example::Application.routes.draw do
get '/:locale' => 'static_pages#home'
scope "/:locale" do
root "static_pages#home"
match 'about', to: 'static_pages#about', via: 'get'
match 'contact', to: 'contact#new', via: 'get'
end
resources "contact", only: [:new, :create]
end
我可以在服务器 (apache) 级别重定向 URL,但我更喜欢在 rails 中执行此操作。
【问题讨论】:
标签: ruby-on-rails routes url-redirection rails-i18n