Quelle est la différence entre les itinéraires de collecte et les itinéraires membres dans Rails?
Par exemple,
resources :photos do
member do
get :preview
end
end
contre
resources :photos do
collection do
get :search
end
end
Je ne comprends pas.
ruby-on-rails
ruby
Never_had_a_name
la source
la source
la source
search_photos_path
au lieu desearch_photos_url
pour que les gens ne pensent pas_path
et_url
font la différence entre les deux.La réponse de Théo est correcte. Pour la documentation, je voudrais également noter que les deux généreront des assistants de chemin différents.
member {get 'preview'}
générera:collection {get 'search'}
générera:Notez la pluralité!
la source
1) : collection - Ajoutez des routes nommées pour d'autres actions qui opèrent sur la collection. Prend un hachage de
#{action} => #{method}
, où méthode est:get/:post/:put/:delete
, un tableau de l'un des précédents, ou: n'importe si la méthode n'a pas d'importance. Ces itinéraires sont mappés vers une URL telle que / users / customers_list , avec un itinéraire de customers_list_users_url .2)
:member
- Identique à:collection
, mais pour les actions qui opèrent sur un membre spécifique.il a traité comme
/users/1;inactive=> [:action => 'inactive', :id => 1]
la source