Nella Ruby on Rails 3 tutorial, il codice utilizza:Perché utilizzare la corrispondenza anziché ottenere quando si esegue il routing in Rails?
match '/signup', :to => 'users#new'
match '/signin', :to => 'sessions#new'
match '/signout', :to => 'sessions#destroy'
match '/contact', :to => 'pages#contact'
match '/about', :to => 'pages#about'
match '/help', :to => 'pages#help'
piuttosto che
get '/signup', :to => 'users#new'
get '/signin', :to => 'sessions#new'
get '/signout', :to => 'sessions#destroy'
get '/contact', :to => 'pages#contact'
get '/about', :to => 'pages#about'
get '/help', :to => 'pages#help'
anche se tutti i percorsi vogliono solo il HTTP GET verbo. Perché non utilizzare get
(o :via => [:get]
su match
) e limitare l'azione di routing come una questione di pratica?
+1 per l'aggiornamento di rails 4.0. Grazie per aver dedicato del tempo ad aggiornare una vecchia risposta. – bengem
Indovina ora 'match' è meglio se hai percorsi utilizzati per più verbi http. –
@PetrosKyriakou Perché è così? So che di tanto in tanto, le migliori pratiche nell'utilizzo di un turno di struttura. Tuttavia, non penso che questo sia il caso qui. Se vuoi fornire sia 'get'and' post'routes, definirli separatamente usando le parole chiave 'get' e' post'. Come accennato nella risposta aggiornata, Rails ora ti obbliga addirittura a definire il metodo di richiesta. Non sono a conoscenza di cambiamenti recenti a tale riguardo. – emrass