У меня ниже отношения между моими сущностями. Один из многих между Institute -> InstituteCourses . От одного до многих между Courses -> InstituteCourses . Я избегал делать много разных между институтами и курсами, потому что у меня есть больше полей в инстимутатуре. Пока это хорошо работает, class Institutes { /** * @ORM\OneToMany(targetEntity="InstitutesCourses", mappedBy="institute", cascade={"all"}) **/ […]
У меня есть набор настроек моделей в Doctrine, где некоторые модели находятся в разных базах данных. Инструмент генерации схемы Doctrine, похоже, создает внешние ключи между базами данных, но не внешние внешние ключи. Например: /** * @ORM\Entity * @ORM\Table(name="db1.Contact") **/ class Contact { /** * @ORM\Id * @ORM\Column(type="integer") * @ORM\GeneratedValue **/ private $id; } /** * […]
У меня есть приложение Symfony Standard Distribution и используйте построитель запросов Doctrine и кэш результатов для ускорения запросов к базе данных. Я также назначаю уникальные идентификаторы для всех моих кешей, таких как …. ->getQuery() ->useResultCache(true, 2592000, 'single_product_query_id_'.$id) ->getOneOrNullResult(); …. При изменении поля продукта я могу удалить этот конкретный кеш, используя …. $em = $this->getDoctrine()->getManager(); $cacheDriver […]
У меня проблема с моими сущностями и контроллерами в Symfony. Я бы вставлял значение моей базы данных во множество таблиц. Запросы Entity с множеством и многими элементами class Requests { /** * @ORM\ManyToMany(targetEntity="Tipi", inversedBy="requests") * @ORM\JoinTable(name="tipi_richieste") */ private $tipi; public function __construct() { $this->tipi = new \Doctrine\Common\Collections\ArrayCollection(); } /** * Add tipi * * @param […]
Последние несколько дней я боролся за простой случай удаления каскада с помощью Doctrine. Доктрина и Симфония обновлены. У меня есть две сущности Serie и Asset, которые связаны друг с другом двумя отношениями OneToOne и OneToMany. Схема такова: У серии есть много Активов. (Содержание). У серии может быть Asset. (предварительный просмотр, это поле имеет значение NULL). […]
В проекте я использую доктрину 2, где у меня есть от одного до многих отношений: Клиент => Заказы Моя проблема аналогична этому вопросу, за исключением того, что я уже получаю сообщение об ошибке при попытке получить объект с помощью arraycollection (): Warning: spl_object_hash() expects parameter 1 to be object, null given in C:\xampp\htdocs\test.example.com\vendor\doctrine\orm\lib\Doctrine\ORM\UnitOfWork.php on line […]
У меня есть следующая сущность с этой репликацией: /** * Acme\DemoBundle\Entity\Book * * @ORM\Table(name="book") * @ORM\Entity(repositoryClass="Acme\DemoBundle\Repository\BookRepository") * @ORM\HasLifecycleCallbacks * @UniqueEntity(fields="publickey", groups={"publickey"}) */ class P1guestlistentry { /** * @var P1guestlistentrystatistic * * @ORM\OneToOne(targetEntity="P1guestlistentrystatistic", orphanRemoval=true, cascade={"all"}, fetch="EAGER") * @ORM\JoinColumns({ * @ORM\JoinColumn(name="fkstatistic", referencedColumnName="pkId", nullable=false) * }) */ private $fkstatistic; Когда я пытаюсь удалить объект, как здесь: $this->getEntityManager()->getConnection()->beginTransaction(); try{ […]
У меня возникла проблема с сохранением нулевого значения, которое уже сохраняется с объектом. Он вызывает следующую ошибку. Catchable Fatal Error: Argument 1 passed to MyProject\EntityBundle\Entity\Requirements::setReplacedEmployee() must be an instance of MyProject\EntityBundle\Entity\Employee, null given, called in /var/www/MyProject/vendor/symfony/src/Symfony/Component/Form/Util/PropertyPath.php on line 347 and defined in /var/www/MyProject/src/MyProject/EntityBundle/Entity/Requirements.php line 384 Первоначально я сохраняю объект replaceEmployee, который может быть null / […]
У меня есть вопрос из любопытства о внутренней работе Доктрины2. Я, как пользователь, вижу действительно чистый и надежный интерфейс, но над капотом должна быть какая-то тяжелая магия. Когда я создаю простой объект, он выглядит примерно так: class SimpleEntity { /** * @ORM\Id * @ORM\Column(type="integer") * @ORM\GeneratedValue(strategy="AUTO") */ protected $id; /** * @ORM\Column(type="string") */ protected $title; […]
Я добавил поддержку Timestampable в свой объект следующим образом: use Gedmo\Timestampable\Traits\TimestampableEntity; , Я обновил свою БД, запустив doctrine:schema:update –force но в любое время, когда я пытаюсь вставить новую запись, я получаю это сообщение: SQLSTATE [23502]: Непустое нарушение: 7 ОШИБКА: значение null в столбце «createdat» нарушает непустое ограничение Зачем? Я использую последние Symfony 2.5.3 и PostgreSQL […]