我使用的I18n internationnalization插件,但它不是翻译1个资料片:验证.rb验证方法中的Rails I18n不起作用?
在我的控制器之一,我有一个验证方法是这样的:
# Verify user is authenticated
verify :only => [ :destroy, :create, :update, :new, :comment ],
:session => :user_id,
:add_flash => { :error => I18n.t(:'Exceptions.not_logged_in') },
:redirect_to => { :controller => 'main' , :action => 'index' }
但是,使用I18n.t( :'Exceptions.not_logged_in')总是显示default_locale,在这个例子中是english。
我在我的Application_Controller中设置了一个设置语言环境的before_filter。
任何人都可以帮助我理解,并帮助我找到解决方法吗?
谢谢!
PS:我尝试添加一个电话都没有成功这个验证方法之前set_locale(在我的控制器)
好主意,但它似乎拒绝在那里有一个Proc。错误消息是“没有marshal_dump是为类Proc定义的” – user62605