[英]Ruby on Rails routes translation using route_translator gem
[英]Rails 4 and route_translator gem
我正在使用路線翻譯器gem來翻譯路線,但無法按照自己的方式進行操作。
所以基本上我安裝了gem並將路線插入
localized do
end
現在我有這樣的路線
users_en GET /en/users(.:format) users#index {:locale=>"en"}
users_cs GET /cs/users(.:format) users#index {:locale=>"cs"}
users_de GET /de/users(.:format) users#index {:locale=>"de"}
在我的haml視圖中,我使用link_to導航到新頁面。 英文是我的默認語言,所以我的默認路由是user_path,但是如果我使用其他語言的頁面(例如/ cs / home),則所有翻譯均有效(t('要翻譯的單詞')內的文本有效,但鏈接沒有翻譯,如果我單擊它,則進入/ users頁面,而不是/ cs / users頁面
我怎樣才能解決這個問題?
我試圖將語言環境放在變量“ users _#{locale} _path”的名稱內 ,然后將值提取出來,但我無法獲得有關如何完成此操作的答案(現在我只有一個字符串,而且我的鏈接看起來像/ users_cs_path)。
因此,我的問題是:1.我做錯了嗎? 2.如何在haml中創建一個類似於“ users _#{locale} path”的字符串, 然后將其用作變量名以獲取諸如“ ## users #{locale} _path”}之類的值 (但是的,這樣做不行)。
在我的locale.rb中,我有
# tell the I18n library where to find your translations
I18n.load_path += Dir[Rails.root.join('lib', 'locale', '*.{rb,yml}')]
# set default locale to something other than :en
I18n.default_locale = :en
在我的route_translator.rb中
RouteTranslator.config do |config|
config.force_locale = true
#config.locale_param_key = :locale
config.generate_unlocalized_routes = true
end
謝謝。
嘗試在RouteTranslator.config
添加它:
RouteTranslator.config do |config|
config.generate_unnamed_unlocalized_routes = true
end
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.