0

我正在使用 Ruby on Rails 3.2.9。在我的应用程序中,我想处理多个“事物”的登录和退出功能,因为除了经典用户之外,“其他事物”可以登录和退出。我想sessions_controller为每个可以进行身份​​验证的东西实现一个“专用”REST-ful,也许通过在config/routes.rb文件中进行如下操作:

# Before:
# resources :users
# resources :other_things

# After:
resources :users do
  resource :sessions, :only => [:new, :create, :destroy], :controller => 'users/sessions'
end
resources :other_things do
  resource :sessions, :only => [:new, :create, :destroy], :controller => 'other_things/sessions'
end

使用上面的代码,我试图为用户和其他事物“分离”/“命名空间”身份验证问题。但是,与上面的代码不同,我想将登录和注销 URL 匹配如下:

localhost/users/sign_in
localhost/users/sign_out
localhost/other_things/sign_in
localhost/other_things/sign_out

应该如何进行?你有什么建议?

4

1 回答 1

1

也许这个?由于路线很少,我不会花时间清理更多。

resources :users do
  get :sign_in => 'users/sessions#new'
  post :sign_in => 'users/sessions#create'
  delete :sign_out => 'users/sessions#destroy'
end

resources :other_things do
  get :sign_in => 'other_things/sessions#new'
  post :sign_in => 'other_things/sessions#create'
  delete :sign_out => 'other_things/sessions#destroy'
end
于 2013-01-11T16:45:36.780 回答