所以我想说我的routes.rb文件中有以下路由 -
get 'site/user/:id' => 'users#show', :as => :get_user
如何使用 link_to 使用命名路由创建指向特定用户ID的链接:get_user
# so this will spit out "site/user", but i want /site/user/23 as output
link_to 'Some User', :get_user
注意 - :我不想将用户作为我的路线文件中的资源。 “user”对象也不是我的User模型的实例。
现在这就是我所拥有的。寻找更清洁的方法,有没有?
link_to 'Some User', {:controller => 'users', :action => 'show', :id => "#{user[:id]}"}
我在Rails v3.0.3上
答案 0 :(得分:1)
get_user_path(user)
应该有用。
(假设user
是您的用户模型的实例。)
答案 1 :(得分:1)
get_user_path(user[:id])
应该有效,因为您使用的是散列而不是ActiveRecord模型。