Apa perbedaan antara rute pengumpulan dan rute anggota di Rails?
Sebagai contoh,
resources :photos do
member do
get :preview
end
end
melawan
resources :photos do
collection do
get :search
end
end
Saya tidak mengerti.
ruby-on-rails
ruby
never_had_a_name
sumber
sumber
sumber
search_photos_path
alih-alihsearch_photos_url
agar orang tidak akan berpikir_path
dan_url
ada perbedaan di antara keduanya.Jawaban Theo benar. Demi dokumentasi, saya juga ingin mencatat bahwa keduanya akan menghasilkan jalur pembantu yang berbeda.
member {get 'preview'}
akan menghasilkan:collection {get 'search'}
akan menghasilkan:Perhatikan pluralitas!
sumber
1) : koleksi - Tambahkan rute bernama untuk tindakan lain yang beroperasi pada koleksi. Mengambil hash dari
#{action} => #{method}
, di mana metode adalah:get/:post/:put/:delete
, array dari yang sebelumnya, atau: apa saja jika metode tidak masalah. Rute ini memetakan ke URL seperti / users / customers_list , dengan rute customers_list_users_url .2)
:member
- Sama seperti:collection
, tetapi untuk tindakan yang beroperasi pada anggota tertentu.itu diperlakukan sebagai
/users/1;inactive=> [:action => 'inactive', :id => 1]
sumber