1

デバイスルートをIDからユーザー名に変更するにはどうすればよいですか?

パスは次のようなものにしたいと思います

http://www.site.com/users/username 

それ以外の

http://www.site.com/users/id

私からしてみれば:

<span>posted by: <%= link_to( t.user.username, user_path( t.user.id ) ) %></span>

私のユーザーモデルでは:

def to_param
    username
end

ただし、を示すルーティングエラーが発生しuninitialized constant UsersControllerます。

これらのルートをroutes.rbに設定しています。

devise_for :users

root :to => 'tickets#index'

resources :users do
    resources :tickets
end

resources :tickets
4

1 に答える 1

0

usernameコントローラーで、 byではなくby で検索しますid

@user = User.find_by_username(params[:id])

今、あなたの見解では、username代わりにidヘルパーuser_pathに渡します:

<%= link_to t.user.username, user_path(t.user.username) %>

于 2012-04-16T23:20:35.047 に答える