简体   繁体   English

设计没有路线匹配会话/用户?

[英]Devise no route matches sessions/users?

Im setting up Devise authentication with my rails 3 project and when i click the sign in button, it displays : 我在我的rails 3项目中设置了Devise身份验证,当我单击“登录”按钮时,它显示:

No route matches "/session/user"

No matter if I use valid credentials or not.. 不管我是否使用有效的凭据。

Heres my form for devise (which i did NOT edit from the defaults) 这是我的设计表格(我没有根据默认设置进行编辑)

<%= form_for(resource, :as => resource_name, :url => session_path(resource_name), :html => {:novalidate => 'novalidate'}) do |f| %>

Any suggestions? 有什么建议么?

UPDATE 更新

Routes.rb Routes.rb

SpecimenTracker::Application.routes.draw do
  devise_for :users

  resources :users
resources :results
  resources :session
match "/results/show" => "results#show"
match "/messages/show" => "messages#show"
match "/login/index" => "login#index"
match "/login/authenticate" => "login#authenticate"
  # You can have the root of your site routed with map.root -- just remember to delete public/index.html.
get 'home/index'
root :to => 'home#index'
  # See how all your routes lay out with "rake routes"

  # Install the default routes as the lowest priority.
  # Note: These default routes make all actions in every controller accessible via GET requests. You should
  # consider removing the them or commenting them out if you're using named routes and resources.
end

Gemfile (only parts i added for devise) Gemfile(仅是我为设计而添加的部分)

gem 'net-ldap'

gem "devise", "~> 1.4"
gem "devise_ldap_authenticatable"


gem 'hpricot'
gem 'ruby_parser'

Output of rake routes (All the session on the bottom are from an old authentication system i tried using but then dumped. Shouldnt affect anything.. right? ) 瑞克路由的输出(底部的所有会话均来自我尝试使用的旧身份验证系统,然后又被丢弃了。不应该有任何影响..对吗?)

  new_user_session GET    /users/sign_in(.:format)      {:controller=>"devise/sessions", :action=>"new"}
        user_session POST   /users/sign_in(.:format)      {:controller=>"devise/sessions", :action=>"create"}
destroy_user_session DELETE /users/sign_out(.:format)     {:controller=>"devise/sessions", :action=>"destroy"}
               users GET    /users(.:format)              {:controller=>"users", :action=>"index"}
                     POST   /users(.:format)              {:controller=>"users", :action=>"create"}
            new_user GET    /users/new(.:format)          {:controller=>"users", :action=>"new"}
           edit_user GET    /users/:id/edit(.:format)     {:controller=>"users", :action=>"edit"}
                user GET    /users/:id(.:format)          {:controller=>"users", :action=>"show"}
                     PUT    /users/:id(.:format)          {:controller=>"users", :action=>"update"}
                     DELETE /users/:id(.:format)          {:controller=>"users", :action=>"destroy"}
             results GET    /results(.:format)            {:controller=>"results", :action=>"index"}
                     POST   /results(.:format)            {:controller=>"results", :action=>"create"}
          new_result GET    /results/new(.:format)        {:controller=>"results", :action=>"new"}
         edit_result GET    /results/:id/edit(.:format)   {:controller=>"results", :action=>"edit"}
              result GET    /results/:id(.:format)        {:controller=>"results", :action=>"show"}
                     PUT    /results/:id(.:format)        {:controller=>"results", :action=>"update"}
                     DELETE /results/:id(.:format)        {:controller=>"results", :action=>"destroy"}
       session_index GET    /session(.:format)            {:controller=>"session", :action=>"index"}
                     POST   /session(.:format)            {:controller=>"session", :action=>"create"}
         new_session GET    /session/new(.:format)        {:controller=>"session", :action=>"new"}
        edit_session GET    /session/:id/edit(.:format)   {:controller=>"session", :action=>"edit"}
             session GET    /session/:id(.:format)        {:controller=>"session", :action=>"show"}
                     PUT    /session/:id(.:format)        {:controller=>"session", :action=>"update"}
                     DELETE /session/:id(.:format)        {:controller=>"session", :action=>"destroy"}
        results_show        /results/show(.:format)       {:controller=>"results", :action=>"show"}
       messages_show        /messages/show(.:format)      {:controller=>"messages", :action=>"show"}
         login_index        /login/index(.:format)        {:controller=>"login", :action=>"index"}
  login_authenticate        /login/authenticate(.:format) {:controller=>"login", :action=>"authenticate"}
          home_index GET    /home/index(.:format)         {:controller=>"home", :action=>"index"}
                root        /(.:format)                   {:controller=>"home", :action=>"index"}

Check your config/routes.rb, is there a line for devise? 检查您的config / routes.rb,是否有行可以设计? If not, you may want to run 如果没有,您可能要运行

rails generate devise_install

And

rails generate devise User

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

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