저는 아티스트 리소스가있는 프로젝트에서 작업하고 있습니다. 아티스트 리소스에는 재생 목록이라는 하위 리소스가 있습니다. 그리고 더 많은 재생 목록에는 노래라는 또 다른 중첩 된 아이가 있습니다. 그래서 기본적으로 아티스트는 많은 재생 목록을 가질 수 있으며 재생 목록은 많은 곡을 가질 수 있습니다. Laravel 4 중첩 된 리소스 논리 문제
Route::resource('artists', 'ArtistsController');
Route::resource('artists.playlists', 'PlaylistsController');
Route::resource('artists.playlists.songs', 'SongsController');
내가 /artists
모두에서 간단한 GET 요청을 시도
/artists/1
에서 GET 요청은
/artists/1/playlists
내가 가진 외래 키 1.
이제 문제와 모든 재생 목록의 기록, 즉 아티스트 ID 1에 속하는 모든 재생 목록을 반환합니다 아이디 1. 아티스트를 반환하는 논리로 될 때 /artists/1/playlists/1
에 액세스합니다. 반환해야하는 항목은 무엇입니까? id가 1 인 재생 목록 또는 아티스트 ID가 1 인 첫 번째 재생 목록 레코드를 반환해야합니까?
두 번째 것은 나에게 더 논리적 인 것처럼 보입니다. 그러나 삭제 요청을 처리하는 방법과 같은 다른 문제가 발생합니다. /artists/1/playlists/1
아티스트 ID 1의 첫 번째 재생 목록을 삭제하려고하지만 ID가 없습니다.
어쩌면 나는 중첩 된 리소스를 올바르게 처리하는 방법을 정확히 알지 못한다. 왜냐하면 나는 초보자이기 때문이다. 어떻게해야합니까? 나는 그들을 중첩시켜야하지 않느냐. 그리고 각각에 대해 별도의 리소스가 있습니다. /artists
및 /playlists
및 /songs
처럼?
OP가 그가 이미 제안한 컨트롤러를 가지고 있다고 언급 한 것 같습니다. – lozadaOmr