我正在研究一個具有藝術家資源的項目。藝術家資源有一個稱爲播放列表的子資源。另外更多的播放列表還有另一個名爲歌曲的嵌套小孩。所以基本上藝術家可以有很多播放列表,並且播放列表可以有很多歌曲。Laravel 4嵌套資源邏輯問題
Route::resource('artists', 'ArtistsController');
Route::resource('artists.playlists', 'PlaylistsController');
Route::resource('artists.playlists.songs', 'SongsController');
當我嘗試在/artists
一切簡單的GET請求工作正常,我能夠返回所有的藝術家。類似地,獲取請求/artists/1
將返回藝術家ID爲1. /artists/1/playlists
將返回屬於藝術家ID 1的所有播放列表,即所有播放列表記錄具有外鍵1.
現在我遇到的問題是邏輯,即當我訪問/artists/1/playlists/1
,它應該返回什麼?它應該返回播放列表與id 1或屬於藝術家id 1的第一個播放列表記錄。
第二個似乎更符合我的邏輯,但後來我遇到了其他問題,如如何處理刪除請求/artists/1/playlists/1
,因爲我我正嘗試刪除藝術家ID 1的第一個播放列表,但我沒有它的ID。
也許我不完全知道如何正確處理嵌套資源,因爲我是一個新手。 我該怎麼辦?我應該不要將它們嵌套。併爲每個單獨的資源。像/artists
和/playlists
和/songs
?
我想OP已經提到他已經有了你正在建議的控制器? – lozadaOmr