vital9lutin / skeleton
This package is abandoned and no longer maintained.
No replacement package was suggested.
CMS API for Laravel
dev-master
2020-03-27 10:41 UTC
Requires
- php: ^7.2
- illuminate/database: ~5.8.0
- illuminate/http: ~5.8.0
- illuminate/pagination: ~5.8.0
- illuminate/support: ~5.8.0
This package is auto-updated.
Last update: 2020-10-27 12:25:14 UTC
README
Index - служит для получения всех записей.
- В этом методе доступен Филтер/Поиск, что бы он отработал нужно передать хотя бы один параметер.
- page-limit:15 - количество элементов на странице.
- global-search:value - глобальный поиск. По умолчанию работает по полям которые указаны в $fillable. Что бы добавить поиско по вложеностям или убрать некоторые поля, нужно создать в модели переменную. public $globalSearch = ['test','test.relation.field'].
- sorting[key]:asc|desc - сортировка полей (не работает по вложенности).
- filter[key]....[key]:value - фильтре по точному соответствию (также работает по связям).
- search[key]....[key]:value - поиск по полю (также работает по связям).
Show - служит для получения одной записи.
Store - служит для создания и редактирования записи.
- Если передать id, то запись обновиться если не то она создастся.
- Для установки связи:
- BelongsToMany | HasMany: - нужно передать многомерный массив/объект с id (Пример: [{"id":1},{"id":2}])
- HasOne | BelongsTo: - нужно передать одномерный массив/объект с id (Пример: {"id":1})
Destroy - служит для удаления записи.
Необходимо использовать метод DELETE и передать id записи в запросе (Пример: //domen/user/1).
Model
Store
Для этого метода доступны hooks/function которые вам позволят повлиять на сохранение и обновления записи. Что бы их задействовать вам достаточно создать их в своей модели. Данные изменяются по ссылке.
- hookSyncBefore(&$data) - позволяет повлиять на данные которые передаются для сохранения.
- hookSyncModel(&$model, $data) - позволяет повлиять на model после создания или обновления, до установки связей.
- {название связи}HookSyncRelated(&$model, $val) - переопредиляет работу связи при сохранении. (Пример: userHookSyncRelated - переопределяет работу связи user)
- hookSyncAfter(&$model, $data) - позволяет повлиять на model, уже после создания или обновления.