Rails:如何为特定对象创建默认路由

时间:2010-09-19 01:50:49

标签: ruby-on-rails rails-routing

我的路线中有一个User类和map.resources:users。

如果我创建链接

link_to @user.name, @user

它会以某种方式自动创建指向/ users / 3的链接,其中3是用户的ID。 如果我想创建更多用户友好链接并且不是通过ID而是通过用户名识别用户,该怎么办?所以path看起来像/ users / some_user_name。如何重新分配@user的默认链接,以便我不需要更改所有模板?

2 个答案:

答案 0 :(得分:2)

您可以使用FriendlyId gem。这正是你想要的。例如,如果您希望链接看起来像/users/username

class User < ActiveRecord::Base
  has_friendly_id :username
end

答案 1 :(得分:0)

找到它。

在User.rb中:

def to_param
  username
end