Структура материала, является контейнером для слайсов. Поля:
- id - идентификатор материала, числовой, обязательно
- name - имя материала,текстовое поле, обязательно
- type - тип материала, текстовое поле (пока это может быть субтитры, Текст, Презентация), обязательно
- link - ссылка на оригинал, текстовое поле, необязательно
- additional - дополнительные параметры материала, сериализованный JSON объект (например для видео ссылка на видео и на сабы), необязательно
Структура слайса материала. Поля:
- id - идентификатор слайса, числовой, обязательно
- material_id - идентификатор материала, к которому принадлежит слайс, числовой, обязательно
- content - JSON объект с параметрами (отличными для каждого типа материала)
#REST Scheme
GET /material - список “залитых” в платформу материалов
POST /material - создание нового материала, параметры
- name - обязательно
- type - обязательно
- link - необязательно
- additional - необязательно
GET /material/{material} - возвращает объект Material
PATCH /material/{material} - апдейт объекта Material
DELETE /material/{material} - удаление объекта Material (может и не понадобится)
GET /material/{material}/slice - получение всех слайсов исходного материала
POST /material/{material}/slice - создание нового слайса, параметры
- id - необязательно
- material_id - необязательно
- content - обязательно
GET /material/{material}/slice/{slice} - возвращает слайс материала
PATCH /material/{material}/slice/{slice} - апдейт слайса материала
DELETE /material/{material}/slice/{slice} - удаление куска материала
- Composer
- PostgreSQL
- git clone https://github.com/kursomir/CoreAPI.git
- cd CoreAPI
- composer install
- cp .env.example .env
- Настройка окружения в .env:
- Настройка подключения PostgreSQL
- Установка уникального ключа (APP_KEY)
- php artisan migrate
- git pull
- composer install
- php artisan migrate
- Перезагрузить php для сброса кэша
Kursomir CoreAPI is open-sourced software licensed under the MIT license