路由I18n_routing gem的问题

时间:2011-08-28 18:11:34

标签: ruby-on-rails-3 url internationalization routing translation

我正在使用Rails 3和我的第二个Rails项目(即我是新手)。我正在创建一个有多个语言环境的网站,目前瑞典和美国。我正在使用I18n_routing gem来创建本地化的url:s。我也在使用friendly_id gem创建更好的网址。

我的问题:我无法翻译我的嵌套网址。它们仍然是默认网址。

这是我的routes.rb:

  localized(I18n.available_locales, :verbose => true) do
    resources :calculation_types, :only => [:show], :path => '' do
      resources :calculations, :only => [:index, :show], :path => '' do
        member do
          put 'calculate_it'
          get 'calculate_it', :redirect_me => true
          get 'link'
        end
      end
    end  
  end

  localized(I18n.available_locales, :verbose => true) do
    match 'searchresults' => 'home#search-results', :as  => :searchresults
    match 'about' => 'home#about', :as => :about   
    match 'advertise' => 'home#advertise', :as => :advertise
    match 'terms' => 'home#terms', :as => :terms
    match 'calculator' => 'home#calculator', :as => :calculator
    match 'feedback' => 'home#feedback', :as => :feedback
  end 

这是我的语言环境的样本(剪辑)(瑞典语):

se:
  named_routes_path:
    about: 'om'
    advertise: 'annonsera'
    calculator: 'kalkylator'
    feedback: 'feedback'
    searchresults: 'sokresultat'  
    terms: 'anvandaranvisning'

  resources: 
    accumulated-passive-income: "vardet-av-din-passiva-inkomst"
    all-about-a-date: "allt-om-ett-datum"
    area: "area"
    average-speed: "genomsnittshastighet"
    birthday-in-days: "fodelsedag-i-dagar"

这些是案件的一些事实:

  • 资源翻译包括“calculation_types”和“calculation”。
  • 我在翻译文件中尝试了几种设置。
  • SECOND路由工作,带有“匹配”的路由工作,它们也出现在我耙路线时。
  • 我没有收到任何错误消息。一切正常。
  • 我使用的是friendly_id作为url-words。网址的示例可以是http://local.domain.com:3000/diet/bmi,其中“diet”是calculate_type.friendly_id,bmi是calculate.friendly_id

我需要帮助:
- 为什么嵌套路由不显示为路由?他们为什么不被创造? - 我如何让它工作?

您还需要更多信息来帮助我吗?

1 个答案:

答案 0 :(得分:0)

似乎这不是I18n_routing的问题,因为应该翻译的单词实际上是friendly_id:s。所以,忽略这个问题的I18n_routing部分并专注于friendly_id-translation ......