Как в Symfony откатить последнюю Doctrine миграцию ?

Фреймоворк Symfony предоставляет самый удобный вариант работы с БД через ORM Doctrine. Это утверждение может показаться спорным для многих, но если за вашими плечами опыта есть опыт с Active Record в Yii2 или Laravel, то многое для Вас будет непривычным, но равнодушными вы не останетесь точно. 

Здесь многое удобно. Например для отражения изменений вашей сущности на БД, Вам достаточно одной консольной команды. 

Читать далее

Создание связи (отношения) один ко многим в Doctrine.

Существует два основных типа отношений / ассоциаций:

  • ManyToOne / OneToMany
  • ManyToMany

ManyToOne/OneToMane наиболее распространенная связь, отображаемая в базе данных с помощью столбца внешнего ключа (например, столбец category_id в таблице product). На самом деле это всего лишь один тип ассоциации, но он виден с двух разных сторон отношения.

Читать далее

Консольные команды в Symfony 5 для работы с Doctrine.

ORM Doctrine в Symfony 5 это прекрасный инструмент для работы с БД разных видов в ООП-стиле. Для эффективной и комфортной работы в Symfony 5 предусмотрено большое количество консольных команд.

Читать далее

Как создать сущности Entity Doctrine в Symfony из существующей базы данных.

Когда вы начинаете работу над новым проектом, в котором используется база данных, возникает две разные ситуации. В большинстве случаев модель базы данных спроектирована и построена с нуля. Однако иногда вы начинаете с существующей и, вероятно, неизменяемой модели базы данных. К счастью, Doctrine поставляется с набором инструментов, которые помогут сгенерировать классы моделей из существующей базы данных.

Читать далее

Получение связных сущностей с помощью JOIN в репозитории в Symfony фреймворке.

По умолчанию Doctrine при загрузке объектов из таблиц с отношенимя OneToMany / ManyToOne использует несколько запросов (примеры здесь). В приведенных выше примерах были сделаны два запроса — один для исходного объекта (например, категории) и один для связанного объекта (объектов) (например, объектов Product).

В случае если требуедтся сразу получить всю информацию, то требуется использовать запрос с JOIN.

Читать далее

Получение связных сущностей из БД при помощи ленивой загрузки Doctrine в фреймворке Symfony.

ORM Doctrine прекрасно интергрирована с фреймворком Symfony и позволяет не думать о базе данных, а манипулировать непосредственно с объектами.

Так например в БД имеются связные таблицы Один ко Многим, и с помощью Doctrine можно легко получить их содержимое, ввиде сущностей.

Читать далее

Doctrine. Сохранение связных сущностей One To Many в таблицы БД в фреймворке Symfony.

Сохранение связанных сущностей в Symfony 5.

У вас в проекте написанном на фреймворке Symfony, имеются связные между собой Entity, которые с помощью Doctrine можно сохранить в БД в связанных таблицах. Например у вас могут быть отношения Многие к Одному (Many To One). Сделать это очень легко.

Читать далее