Laravel & PHP Deep — фреймворки и пакеты

Spatie-пакеты хороши, пока не становятся языком вашей доменной модели

Spatie-пакеты хороши, пока не становятся языком вашей доменной модели

Spatie — не «поставил и забыл». Permissions, Media Library, Activitylog, Data, Query Builder закрывают скучную механику, но добавляют свой слой абстракции. Перед установкой решите: это инфраструктура или часть бизнес-логики?

Чек перед composer require:
— пакет можно убрать без переписывания половины приложения;
— понятно, где живёт состояние: БД, диск, очередь, кэш;
— кастомные маппинги и расширения лежат в одном месте;
— простая таблица не превращается в мини-фреймворк.

Типовая ошибка — делать spatie/laravel-permission моделью оргструктуры. Роли и права — слой доступа. Тарифы, отделы, владельцы лидов и правила выдачи лучше держать в своих таблицах и сервисах.

Нормальный паттерн: Media Library хранит файлы и конверсии, а лимиты и модерация живут отдельно. Activitylog пишет события, но смысл этих событий не размазан по observers.

Вывод: Spatie экономит время, когда стоит на границе инфраструктуры. Если пакет начинает диктовать язык домена — вынесите доменную модель наружу.
Этот пост опубликован в Telegram-канале Laravel & PHP Deep — фреймворки и пакеты. Подписаться можно по ссылке: @laravel_php_deep.
tech

Свежие посты в категории «Tech Infrastructure»

Все каналы категории →

start

Готовы запустить рекламу через сеть public.tg?

Новый оффер, продукт, GEO, кейс, событие или партнёрский запуск — соберём маршрут под задачу и отдадим медиаплан.

Telegram для медиаплана: @AFFtop_connect. Быстрый тест: $20 за канал, $1000 за пакет по сети.