Rails: как создать маршрут по умолчанию для конкретного объекта - PullRequest
2 голосов
/ 19 сентября 2010

У меня есть класс User и map.resources: пользователи в моих маршрутах.

Если я создаю ссылку

link_to @user.name, @user

Это каким-то образом автоматически создаст ссылку на / users / 3где 3 - это идентификатор пользователя.Что делать, если я хочу создать более удобные ссылки и идентифицировать пользователей не по идентификаторам, а по их именам.Таким образом, путь будет выглядеть как / users / some_user_name.Как переназначить ссылку по умолчанию для @user, чтобы мне не нужно было менять все шаблоны?

Ответы [ 2 ]

2 голосов
/ 19 сентября 2010

Вы можете использовать FriendlyId gem.Это именно то, что вы хотите.Например, если вы хотите, чтобы ссылки выглядели как /users/username:

class User < ActiveRecord::Base
  has_friendly_id :username
end
0 голосов
/ 19 сентября 2010

Нашел.

В User.rb:

def to_param
  username
end
...