Rails 3中的locale和default_locale
今天使用Cucumber测试的时候,发现Capybara打开的浏览器中I18n不正常。百思不得其解之后开始折腾。
当配置是这样的时候:
不知道什么原因,development环境下,I18n.locale被设置为了I18n.default_locale。所以:
class ApplicationController < ActionController::Base before_filter :set_locale private def set_locale I18n.locale = params[:locale] || I18n.default_locale endend
不过,在本地的thin start -e production运行的时候,在URL中加上?locale=en是无效的,还是显示中文。不知道什么原因。