我有一个rails应用程序,在应用程序中我们使用了2个区域设置变量:en
& :fr
在帮助部分,我们有用两种语言编写的文章;
...en/help/articles/5-booking-process #Content EN
...fr/help/articles/5-Processus-de-reservation #Content FR
但它也创造了这个;
...en/help/articles/5-booking-process
且内容为英文。 但是,由于友好ID,它也会生成此网址;
...en/help/articles/5-Processus-de-reservation
在此链接中,当@locale
返回:en
时,内容为英文但网址友好的部分是法语。
我不知道如何避免这样的问题,我应该添加规范还是更改routes.rb
的结构?
在routes.rb
Rails.application.routes.draw do
scope "(:locale)", locale: /#{I18n.available_locales.join("|")}/ do
...
...
...
end
end
PS:这是我在相关模型中使用友好网址的方式:
def to_param
"#{id}-#{title.parameterize}"
end