Ruby on rails to_param с несколькими полями для SEO - PullRequest
1 голос
/ 02 марта 2010

Я пытаюсь сделать свои URL красивее и при этом использовать успокоительные ресурсы. Я понимаю, что вы можете переопределить метод to_param, если у вашего объекта есть свойство name , например:

def to_param
  self.name
end

, который даст вам маршрут /: модель /: имя . Это все просто, но я должен иметь одинаковое имя на нескольких языках. Я не смог найти запись в блоге о том, как это сделать, так как я могу переопределить метод to_param, чтобы предоставить мне маршрут, подобный /: model /: language /: name ?

1 Ответ

2 голосов
/ 02 марта 2010

Вы всегда можете сделать:

/language/:language/model/:name

Это можно сделать с помощью вложенных маршрутов:

map.resources :languages do |l|
  l.resources :profiles
end

Тогда ваш маршрут будет:

langauge_profile_url('spanish', @profile)

Однако ...

В зависимости от того, что вы пытаетесь сделать, вам лучше использовать встроенный материал rails i18n . Это так, чтобы пользователи могли просматривать сайт на разных языках ??

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...