Saya membuat REST API di Laravel dan ada satu hal yang tidak dapat saya pahami. Situasinya adalah sebagai berikut; pengguna dapat masuk, menelusuri artikel, dan menjadikannya favorit.
Meja favorit terdiri dari article_id
dan user_id
Permintaan dirancang dengan cara berikut:
[GET]
/article/24 lihat artikel 24[GET]
/article/24/favorite menunjukkan favorit, jika tidak kembali 404[POST]
/article/24/favorite jadikan favorit[DELETE]
/article/24/favorite hapus favorit
Tampaknya baik-baik saja, tetapi sumber daya yang disarangkan secara default mengharapkan format berikut:
/controller/[id]/sub_controller/[sub_id]
Apa cara terbaik untuk menghindari persyaratan sub id ini? Saya tidak memerlukan ID favorit karena kombinasi id artikel dan id pengguna sudah cukup untuk menemukan item di database saya.
Ini adalah rute saya saat ini untuk permintaan tersebut:
Route::resource('articles', 'ArticlesController',
array('only' => array('index','store','show','destroy')));
Route::resource('articles.favorite', 'ArticlesFavoriteController',
array('only' => array('show','store','destroy')));
Saat ini, saya mengharuskan pengguna API untuk menambahkan /0 ke url untuk memicu rute yang benar, tetapi harus ada cara yang lebih baik.