REST API的用户资源

时间:2018-04-30 18:12:30

标签: ruby-on-rails rest api devise

我正在使用devise的{​​{1}}宝石。

为用户生成的默认路由包括以下某些路由:

rails

我试图理解为什么他们没有使用 new_user_password GET /users/password/new(.:format) devise/passwords#new edit_user_password GET /users/password/edit(.:format) devise/passwords#edit user_password PATCH /users/password(.:format) devise/passwords#update PUT /users/password(.:format) devise/passwords#update POST /users/password(.:format) devise/passwords#create 等?

例如,我添加了用户/users/:id/password路由。我可以遵循相同的逻辑并制作类似preference的内容,但感觉它应该是/users/preferences基于当前登录的用户。但是,我试图保持一切相似,/users/:id/preferences已经设定了先例,除非我改变它。

1 个答案:

答案 0 :(得分:3)

可以/users/:id/preferences。但是,params[:user_id](可能)将等于current_user.id。所以,它有点多余。

相反,您可以执行/users/preferences并访问id中的相关current_user。 (如果你喜欢这种东西,那么通过不在网址中包含它来模糊当前用户的id。)