Agak telat kali yah jawabannya tapi moga-moga membantu :)
> Sebenarnya yang saya inginkan itu bukan memanggil record, makanya
> :collection itu saya sebutkan terlebih dahulu dari pada map.resources
> :speeches. Karena saya ingin upload file mp3 terlebih dahulu, lalu
> mengambil
> informasi dari tag-nya dan supply ke form, baru create modelnya.
>
> Ternyata masalahnya karena adanya deklarasi ganda sehingga route
> sebelumnya
> terhapus oleh yang kedua. Sehingga yang berlaku hanya map.resources
> :speeches. Maka dengan menghapus baris map.resources :speeches
> masalahnya
> terpecahkan.
>
Iyah, dengan declare:
map.resources :speeches, :collection => {
:upload_file => 'get'
}
Anda sebenernya sudah mendapatkan method-method REST, ditambah
upload_file (GET) yang anda declare.
> Masi penasaran bedanya :collection, :member dan :new . Mungkin :new
> rada
> kebayang maksudnya, tapi kalo ada contoh penggunaan akan lebih baik.
>
:collection itu bekerja seperti index, dalam arti kata collection of
result dari controller tersebut.
Kayak misalnya /users itu kan berarti collection of users, plural.
Kalo pake contoh routes:
map.resources :speeches, :collection => {
:upload_file => 'get'
}
method upload_file itu bekerja buat collection of speeches, /users/
upload_file.
:member itu bekerja pada satu member dari collection.
Url /users/1 itu kan member of collection of users, singular.
Kalo pake contoh routes:
map.resources :speeches, :member => {
:upload_file => 'get'
}
method upload_file itu bekerja pada member of collection of speeches, /
users/1/upload_file.
--
http://beol.laksmana.com/
http://www.plurk.com/user/beol