not quite the routes you are providing are not equivalent to what I wanted to archive and they are the only routes in the routing file for this test. What I want is:
GET /login should be resolved to session#new POST /login should be resolved to session#create possible ways of doing so are according to the action_dispatch/ routing.rb file get 'login' => 'session#new' post 'login' => 'session#create', :as => :login or when using match match 'login' => 'session#new', :via => :get match 'login' => 'session#create', :via => :post the above two examples are equivalent since get and post just add the :via => :method to the options and call match class Session < ActiveRecord::Base # include ActiveModel::Validations attr_accessor :login, :password #, :id end On Feb 20, 7:02 pm, Conrad Taylor <[email protected]> wrote: > On Sat, Feb 20, 2010 at 4:00 PM, Conrad Taylor <[email protected]> wrote: > > On Sat, Feb 20, 2010 at 3:02 PM, Daniel Guettler < > > [email protected]> wrote: > > >> Hi, I just ran into this ActionController::RoutingError and just > >> wanted to check if someone can confirm this as a bug in the Rails 3 > >> beta gem. > > >> config/routes.rb contains: > > >> get 'login' => 'session#new' > >> post 'login' => 'session#create', :as => :login > > > Daniel, can you post the complete route? The 'get' and 'post' HTTP verbs > > should exist within a member or collection block of a resource block. For > > example, > > > resources :posts do > > collection do > > get :search > > end > > end > > > or > > > resources :posts do > > get :search, :on => :collection > > end > > > Note: both of the examples are equivalent. > > > Next, your routes look ambiguous meaning that you could have easily > > implemented this as follows: > > > match 'login' => "user_sessions#lnew", :as => :login > > Correction: match 'login' => "user_sessions#new", :as => :login > > > > > match 'login' => "user_sessions#destroy", :as => :logout > > > Lastly, your URLs will look like the following: > > >http://localhost:3000/logout > >http://localhost:3000/login > > > Good luck, > > > -Conrad > > >> GET /login works fine: > > >> Started GET "/login" for 127.0.0.1 at 2010-02-20 17:45:49 > >> SQL (0.3ms) SET SQL_AUTO_IS_NULL=0 > >> Processing by SessionController#new as HTML > >> Rendered session/new.html.haml within layouts/application.html.haml > >> (77.9ms) > >> Completed in 85ms (Views: 84.1ms | ActiveRecord: 0.2ms) with 200 > > >> However POST /login gives the following error: > > >> Started POST "/login" for 127.0.0.1 at 2010-02-20 17:45:58 > >> SQL (0.3ms) SET SQL_AUTO_IS_NULL=0 > > >> ActionController::RoutingError (No route matches "/login"): > > >> rake routes returns the expected urls: > > >> login POST /login > >> {:controller=>"session", :action=>"create"} > >> GET /login > >> {:controller=>"session", :action=>"new"} > > >> Thanks, Daniel > > >> -- > >> You received this message because you are subscribed to the Google Groups > >> "Ruby on Rails: Talk" group. > >> To post to this group, send email to [email protected]. > >> To unsubscribe from this group, send email to > >> [email protected]<rubyonrails-talk%2Bunsubscrib > >> [email protected]> > >> . > >> For more options, visit this group at > >>http://groups.google.com/group/rubyonrails-talk?hl=en. -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.

