Articles of doctrine

Сложные предложения WHERE, использующие ORM PHP Doctrine ORM

Я использую ORM PHP Doctrine для создания моих запросов. Однако я не могу представить, как написать следующее предложение WHERE с использованием DQL (Doctrine Query Language): WHERE name='ABC' AND (category1 = 'X' OR category2 = 'X' OR category3 = 'X') AND price > 10 Как указать, куда идут круглые скобки? То, что у меня есть в […]

PHPUnit Mock Objects и статические методы

Я ищу лучший способ проверить следующий статический метод (в частности, с помощью модели Doctrine): class Model_User extends Doctrine_Record { public static function create($userData) { $newUser = new self(); $newUser->fromArray($userData); $newUser->save(); } } В идеале я бы использовал макет объекта, чтобы гарантировать, что «fromArray» (с предоставленными данными пользователя) и «сохранить» были вызваны, но это невозможно, поскольку […]

Когда следует использовать доктрину ORM и когда zend-db-table?

С точки зрения масштаба проекта, доктрина против скорости и производительности zend-db-table, когда я должен использовать доктрину внутри проекта Zend и когда zend-db-table?

Как повторно сохранить объект как другую строку в Doctrine 2

Допустим, у меня есть сущность $e . Есть ли общий способ сохранить его как другую строку, которая будет иметь одни и те же данные сущности, но другой первичный ключ? Зачем мне это нужно: я реализую какую-то временную схему базы данных и вместо обновления строки мне просто нужно создать другую.

Symfony 2: INNER JOIN на не связанной таблице с построителем запросов доктрины

Я пытаюсь построить запрос с построителем запросов doctrine, который присоединяется к несвязанной таблице следующим образом: $query = $this->createQueryBuilder('gpr') ->select('gpr, p') ->innerJoin('TPost', 'p') ->where('gpr.contentId = p.contentId') Но это не работает. Я все еще получаю сообщение об ошибке: Ошибка: идентификационная переменная TPost, используемая в выражении пути соединения, но не была определена ранее. Я искал это сообщение об […]

Учет доктрины Symfony2

Мне нужно очистить кеш моей доктрины в Symfony 2 . В командной строке должен быть какой-то способ очистить кеш . Или где я должен найти и удалить файлы, принадлежащие кешу?

Неверный формат DATETIME от MYSQL

У меня есть приложение с Doctrine 1, и я генерирую поля update_datetime для объектов через new Zend_Date->getIso() . В течение многих лет он работал отлично, но теперь у меня появился новый блокнот, и Doctrine пытается вставить поля DATETIME в виде строки "2013-07-12T03:00:00+07:00" вместо обычного формата даты и времени MySQL "2013-07-12 00:00:00" что совершенно странно. Тот […]

Создание единого объекта из существующей базы данных с помощью symfony2 и доктрины

Можно ли создать единый объект из базы данных с помощью консольного инструмента Symfony2? В середине кодирования мне пришлось добавить таблицу и внести изменения в существующие классы сущностей. Поэтому я не хочу, чтобы все мои сущности возродились. Любые предложения будут оценены!

Два генерируемых значения в доктрине

я хотел бы реализовать удобочитаемый идентификатор в моей доктрине-Entity. Я хочу, чтобы DB-ID работал и добавлял что-то вроде «PRE12-00005» (с префиксом и годом и начинался с 0 каждый новый год). Я попытался добавить Custom-ID-Generator, но кажется, что Doctrine не может работать с двумя сгенерированными значениями в одном Entity. /** * @var integer * @ORM\Column(name="id", type="integer") […]

PHP ORM: Доктрина против Propel

Я начинаю новый проект с symfony, который легко интегрируется с Doctrine и Propel , но мне, конечно же, нужно сделать выбор … Мне было интересно, есть ли у более опытных людей общие плюсы и минусы для общения с любой из этих двух? Большое спасибо. EDIT: Спасибо за все ответы, полезные вещи. На этот вопрос нет […]