用其他东西替换资源user_id

时间:2015-11-05 12:59:38

标签: ruby-on-rails ruby-on-rails-4 devise

我想使用domain.com/users/foo之类的内容而不是/users/user_id/

之类的路线

足够公平,你可以做get "/users/:name/.....,但我使用的是嵌套资源:

  devise_for :users, :controllers => { omniauth_callbacks: 'omniauth_callbacks' }

  resources :users do
    resource :profile
    resources :supports do
      post :interest
    end
  end

有没有办法将资源users/user_id更改为users/firstname

1 个答案:

答案 0 :(得分:2)

为此您可以使用friendly_id gem,也可以在用户模型中定义to_param方法。

def to_param
  "#{name}"
end