ata / ata-cycle-orm
Ata Cycle Orm
Requires
- php: ^7.3
- ext-json: *
- cycle/annotated: ~2.0
- cycle/bootstrap: ~0.4
- cycle/migrations: ^1.0
- cycle/orm: @dev
- dms/phpunit-arraysubset-asserts: ^0.1.0
- illuminate/support: ^6.5
- jchook/phpunit-assert-throws: ^1.0
- orchestra/testbench: ^4.0
Requires (Dev)
- fzaninotto/faker: ^1.4
- mockery/mockery: ^1.0
- phpunit/phpunit: ^8.5
This package is auto-updated.
Last update: 2026-06-29 01:06:56 UTC
README
Это попытка соединить паттерн ActiveRecord, laravel и cycle-orm в одно единое нечто.
Установка
composer install ata/ata-cycle-orm
artisan vendor:publish --provider="Ata\Cycle\ORM\PackageServiceProvider"
Разработка
Необходимо добавить в .env переменную HOST_DB_PORT - это необходимо для поднятия тестовой БД.
Для установки пакетов, поднятия контейнера и тд, нужно выполнить команду make init
Настройка в Laravel
При публикации создается файл config/cycle.php с требуемыми настройками.
migrations
В этом разделе конфига находятся настройки, связанные с миграциями cycle orm:
directory- путь, в котором хранятся миграции. Рекомендуется использовать отличную от ларавельских миграций директорию.table- таблица, в которую будут записываться миграции. Рекомендуется использовать отличную от ларавельских миграций таблицу.default_migration_name- наименование автоматически созданной миграции (будет рассмотрено в разделе Консольные команды)timestamp_format- формат, в котором будет записываться текущая дата в названии файла созданной миграции
database
В этом разделе конфига находятся настройки подключения к БД.
default- база данных, используемая по умолчаниюdatabases- список баз данных, используемых в приложенииconnections- список подключений к разным БД.
Настройки подключений
- Наименование подключения (ключ) - используется в значении
connectionпри добавлении новой БД в разделе конфигаdatabases driver- драйвер подключения к БД. Генерирует уникальный SQL для разных БД.options- опции подключения к БД, такие какconnection- строка подключения (более подробно о формате почитать тут)username- имя пользователя в БДpassword- пароль пользователя в БД
schema
В этом разделе находятся настройки схемы сущностей и их обработка.
generators- генераторы. Порядок генераторов в массиве очень важен! Сущности безprimary keyне будут обрабатываться!path- путь до моделей. Путей может быть несколько, по умолчанию модели ищутся в папкеapp/Models
commands
В этом разделе находится кастомизация логики на создание, удаление и обновление сущностей в БД.
Порядок команд очень важен!
Команды работают по схожему принципу с генераторами (т.е. результат выполнения предыдущей команды записывается в последующую). Они будут рассмотрены подробнее в специальном разделе Команды Маппера.