¿Cuál es la diferencia entre las rutas de recolección y las rutas de miembros en Rails?
Por ejemplo,
resources :photos do
member do
get :preview
end
end
versus
resources :photos do
collection do
get :search
end
end
No entiendo.
ruby-on-rails
ruby
never_had_a_name
fuente
fuente
fuente
search_photos_path
lugar desearch_photos_url
para que las personas no piensen_path
y_url
sean una diferencia entre los dos.La respuesta de Theo es correcta. Por el bien de la documentación, me gustaría señalar también que los dos generarán diferentes ayudantes de ruta.
member {get 'preview'}
Generará:collection {get 'search'}
Generará:Tenga en cuenta la pluralidad!
fuente
1) : colección - Agregue rutas con nombre para otras acciones que operan en la colección. Toma un hash de
#{action} => #{method}
, donde método es:get/:post/:put/:delete
, una matriz de cualquiera de los anteriores, o: cualquiera si el método no importa. Estas rutas se asignan a una URL como / users / customers_list , con una ruta de customers_list_users_url .2)
:member
- Igual que:collection
, pero para acciones que operan en un miembro específico.se trató como
/users/1;inactive=> [:action => 'inactive', :id => 1]
fuente