0
我有一個與軌道4.1.5 before_action有問題,它似乎完全被我的新應用程序忽略。Before_action忽略軌道4.1.5
我想在我的應用程序使用的I18n,我跟着文檔:http://guides.rubyonrails.org/i18n.html
應用控制器:
class ApplicationController < ActionController::Base
# Prevent CSRF attacks by raising an exception.
# For APIs, you may want to use :null_session instead.
protect_from_forgery with: :exception
# Set current language to user params[:locale] if exists otherwise, the default_locale is used(en)
before_action :set_locale
def set_locale
I18n.locale = params[:locale] || I18n.default_locale
end
def default_url_options(options={})
logger.debug "default_url_options is passed options: #{options.inspect}\n"
{ locale: I18n.locale }
end
end
我的 '大' 控制器:
class WelcomeController < ActionController::Base
def helloworld
end
end
我的路線.rb:
Rails.application.routes.draw do
scope "/:locale" do
get '/' => 'welcome#helloworld'
end
end
en.yml:
en:
hello: "Hello world !"
fr.yml:
fr:
hello: "Bonjour le monde !"
我試圖直接改變I18n.locale在我的控制器一樣,和它的作品...
class WelcomeController < ActionController::Base
def helloworld
I18n.locale = :fr
end
end
這就是爲什麼我認爲我的before_action被忽略,但爲什麼?
謝謝,我真的很白癡:) – Ayoros 2014-09-25 15:58:55