2

ルートに User クラスと map.resources :users があります。

リンクを作ったら

link_to @user.name, @user

/users/3 へのリンクが自動的に作成されます。ここで、3 はユーザーの ID です。よりユーザーフレンドリーなリンクを作成し、ID ではなくユーザー名でユーザーを識別したい場合はどうすればよいでしょうか。したがって、パスは /users/some_user_name のようになります。すべてのテンプレートを変更する必要がないように、@user のデフォルト リンクを再割り当てするにはどうすればよいですか?

4

2 に答える 2

2

FriendlyId gemを使用できます。これはまさにあなたが望むものです。たとえば、リンクを次のように表示する場合/users/username:

class User < ActiveRecord::Base
  has_friendly_id :username
end
于 2010-09-19T03:00:33.623 に答える
0

それを見つけた。

User.rb で:

def to_param
  username
end
于 2010-09-19T04:10:47.207 に答える