简体   繁体   English

Ruby on Rails-用户设计路由

[英]Ruby on Rails - User Devise Routing

I'm having issues with routing with Devise and my Users model. 我在使用Devise和Users模型进行路由时遇到问题。 I was trying to get sign_out to work and found an answer that suggested this. 我试图使sign_out正常工作,并找到了一个建议这样做的答案。

// routes.rb // route.rb

devise_for :users do
    get '/users/sign_out' => 'devise/sessions#destroy'
    get '/users/sign_in' => 'devise/sessions#create'
end

And while this works for signing out, if I use just that I cannot view a User . 虽然这适用于登出,但如果我仅使用它就无法查看User

No route matches [GET] "/users/1"

However, if I add back resources :users , I run into the first issue where sign_out or sign_in try to view a User . 但是,如果我添加resources :userssign_out遇到第一个问题,其中sign_outsign_in尝试查看User

Couldn't find User with 'id'=sign_out

How do I add /users/index to the devise_for loop? 如何将/users/index添加到devise_for循环中?

Thanks for your help. 谢谢你的帮助。

Try adding resources :users after your devise_for block. 尝试在devise_for块之后添加resources :users

You can also use the following: 您还可以使用以下内容:

devise_for :users, path: '', path_names: { sign_in: 'login', sign_out: 'logout'}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM