rails使用电子邮件路由而不是id

时间:2016-01-08 05:33:13

标签: ruby-on-rails devise

目前我的rails app正在使用http://admin.evercam.io/users来招募所有用户,并使用设计来进一步展示用户

 devise_for :users, devise_options

 resources :users, only: [:show, :index, :update] do
   get :impersonate, on: :member
 end

http://admin.evercam.io/users/49给我一个用户 但现在我想做的就是在他/她的电子邮件中有一个用户,如

http://admin.evercam.io/users?q=junaid@evercam.io

注意:使用Devise,我是否需要创建新路线或者可以在设计中完成?

1 个答案:

答案 0 :(得分:1)

在您的用户模型中:

def to_param
 email
end

默认情况下,ActiveRecord对象上的to_param方法仅使用对象的ID。通过将此代码放入模型中,您将覆盖ActiveRecord默认值。

您也可以使用friendly_id gem