rails应用程序上的区域设置

时间:2012-03-29 17:10:14

标签: ruby-on-rails locale

所以我使用I18n部分的rails翻译了所有页面。我的问题是,当我更改页面时,语言将恢复为默认值。我的路线中有以下内容。

Games::Application.routes.draw do
  get "game_interest/new"
  get "rules/index"
  get "feedback/index"
  get "help/index"

  get "log_in"  => "sessions#new",     :as => "log_in"
  get "log_out" => "sessions#destroy", :as => "log_out"
  get "sign_up" => "users#new",        :as => "sign_up"

  get "home/index"
  get "about/index"

  resources :feedbacks
  resources :password_resets
  resources :contact_messages
  resources :wishlists
  resources :searches
  resources :help  
  resources :users
  resources :sessions

  resources :games do
    post 'email',     :on => :member
    post 'gensearch', :on => :member
    post 'consearch', :on => :member
  end

  root :to => 'home#index'
end

我尝试在范围“(:locale)”中敲击以下内容但是我失去了控制器错误。任何想法?

1 个答案:

答案 0 :(得分:1)

我们使用了与您尝试过的类似的模式(即将路由包装在scope (:locale) do ... end中,并且它可以正常使用。您可能需要在获取路径中添加显式控制器和操作以摆脱丢失的控制器错误。即

get "game_interest/new" => 'controller#action'
get "rules/index" => 'controller#action'
# etc, etc

我建议使用范围和使用rake routes

进行操作和测试的显式路线映射