- Используя фреймворк Laravel реализовать RESTful api.
- Реализовать сущности
- Товары
- Категории
- Товар-Категория
- Реализовать выдачу данных в формате json по RESTful
- Создание Товаров (у каждого товара может быть от 2-х до 10 категорий)
- Редактирование Товаров
- Удаление товаров (товар помечается как удаленный)
- Создание категорий
- Удаление категорий (вернуть ошибку если категория прикреплена к товару)
- Получение списка товаров
- Имя / по совпадению с именем
- id категории
- Название категории / по совпадению с категорией
- Цена: от - до
- Опубликованные: да / нет
- Не удаленные
Сущность "Товар-Категория" реализована только на уровне БД, модель для нее не требуется.
Фильтрация в списке товаров задается в параметре filter
Фильтрация по неудаленным товарам заменена на фильтрацию "включая удаленные", что показалось чуть более логичным
Документация в формате OpenApi в папке docs
, там же json-конфигурация для Postman'а
- Запуск:
docker-compose up -d
- Консоль:
docker-compose exec testapp-backend bash
- Базовый урл (при внесении соответствующей записи в hosts-файл):
http://api.testapp.local