Отображение данных, возвращенных из ресурса Laravel API, в виде - PullRequest
0 голосов
/ 04 июня 2019

В приложениях laravel 5.7 возможно ли создать ресурс API в контроллере и отобразить результат в виде? Например, если у меня есть такой контроллер

public function index()
{
    return BookResource::collection(Book::all());
}

и этот маршрут в моем файле api.php

Route::get('books', 'BookController@index');

Я смогу увидеть все книги в почтальоне, когда сделаю запрос на получение ../api/books.

Если я хочу отобразить книги в виде, когда запрос на получение сделан на /books, как я буду это делать? Вот моя мысль о том, как это сделать

  1. создать маршрут в web.php, чтобы получить books
  2. удалить ресурс API из BookController и получить список книг
  3. добавить функцию в маршрут получения книг api.php (вернуть ресурс книги внутри функции)
  4. отображение данных с контроллера в виде

Это будет правильный путь? Проще говоря, вопросы будут такими: как бы вы создали приложение и выставили его API?

1 Ответ

0 голосов
/ 04 июня 2019

Вам не нужно удалять маршруты, вы можете сохранить маршруты api и web для доступа к вашим Book моделям.

Подумайте так: ваши книги хранятся в базе данных, ваши маршруты web и api - это всего лишь 2 разных способа доступа к этой базе данных, но они могут (и должны ) жить в разных файлы.

В основном вы можете иметь в web.php

Route::resource('books', 'BooksController');

и api.php

Route::resource('books', 'Api\BooksController');
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...