Рекомендуемая структура маршрута Laravel для модельных отношений - PullRequest
2 голосов
/ 25 марта 2019

Я знаю, что этот вопрос может быть полностью основан на мнении, но здесь идет.Я хотел бы знать рекомендуемый способ структурирования маршрутов на основе модельных отношений в Laravel.Возьмем, к примеру, следующие три модели:

User
Post
Comment

С их отношениями (самое основное) следующим образом:

User hasMany Posts
Post hasMany Comments

В моем файле rotes я хочу получить списокСообщения определенного пользователя.Я могу быть склонен использовать любое из следующего:

Route::get('/users/{user_id}/posts')
Route::get('/posts/{user_id}')

А также для получения комментариев к конкретному сообщению я могу использовать любое из двух:

Route::get('/posts/{post_id}/comments')
Route::get('/comments/{post_id}')

Какой метод будетназывается наиболее рекомендуемым.И почему?Спасибо всем!

1 Ответ

4 голосов
/ 25 марта 2019

Ваши первые варианты выглядят хорошо:

Route::get('/users/{userId}/posts')
Route::get('/posts/{postId}/comments')

Если вы хотите реализовать «обратную» конечную точку, как насчет более явного описания параметров маршрута:

Route::get('/posts/by-user/{userId}')
Route::get('/comments/for-post/{postId}')
...