Я добавляю i18n на свою веб-страницу (разный контент для разных языков). Мои URL выглядят так:
http://host.tld/de/news/15
http://host.tld/en/news/15
...
Все мои URL в приложении задаются методом link_to
/ url_for
, подобным этому
url_for("/news/#{news.id}/#{urlify(news.title)}")
url_for("/news/#{@news.section}")
...
Моя маршрутизация выглядит так:
scope "/:language/", :language => /de|en/ do
match "news/:news_id(/:title)" => "news#show_entry", :constraints => { :news_id => /[0-9]+/ }
...
end
Я добавляю это в свой ApplicationController:
def default_url_options(options={})
{:language => I18n.locale}
end
Теперь я хочу добавить префикс языка ко ВСЕМ URL без изменения всех вызовов url_for () -. Есть ли решение (параметр / config-option или что-то еще), чтобы добавить этот префикс? Он также должен работать с относительными путями.