Компонент Doctrine
Компонент предоставляет интерфейс для работы с базами данных с помощью ORM Doctrine.
Установка
Для установки библиотеки воспользуйтесь composer
$ composer require micro/plugin-doctrine
И добавьте в список плагинов. По умолчанию {PROJECT ROOT DIR}/etc/plugins.php
Концигурация
ORM_CONNECTION_LIST
- список соединений с БД.ORM_{connection name}_DRIVER
- имя драйвера
Дополнительные конфигурации зависят от драйвера.
Драйверы
pdo_mysql
ORM_{connection name}_HOST
- по умолчаниюlocalhost
ORM_{connection name}_PORT
- по умолчанию3306
ORM_{connection name}_DATABASE
- имя базы данных.ORM_{connection name}_USER
- имя пользователяORM_{connection name}_PASSWORD
- пароль
pdo_sqlite
ORM_{connection name}_PATH
ORM_{connection name}_IN_MEMORY
pdo_pgsql
ORM_{connection name}_HOST
ORM_{connection name}_PORT
ORM_{connection name}_DATABASE
ORM_{connection name}_USER
- имя пользователяORM_{connection name}_PASSWORD
- пароль
Дополнительная информация
- Для описание свойств моделей необходимо использовать атрибуты.
- Создание моделей и связей
Утилиты для работы с cli
Подробное описание и набор команд можете посмотреть выполнив команду php bin/console orm
Фасад
Фасад предоставляет доступ к EntityManager.
Пример использования
use Micro\Plugin\Doctrine\DoctrineFacadeInterface;
$facade = $container->get(DoctrineFacadeInterface::class);
$entityManager - $facade->getManager('example');
//Or
$defaultEntityManager = $facade->getDefaultManager();
$entity = new Entity();
$entityManager->persist($entity);
$entityManager->flush();