Symfony — сохраняющиеся отношения ManyToMany

Есть ли другой способ, которым я мог бы написать этот кусок кода лучше? Я что-то здесь упускаю?

$user->addEntity($entity);
$entity->addUser($user);$em = $this->getDoctrine()->getManager();
$em->persist($user);
$em->persist($entity);

0

Решение

Вы можете добавить только из владеющая сторона отношения; тогда ты можешь persist только этот объект и очистить его.

Например, если ваши аннотации такие

class User
{
/**
* @ORM\ManyToMany(targetEntity="Entity", inversedBy="users")
* @ORM\JoinTable(name="user_entity")
*/
protected $entities
}

class Entity
{
/**
* @ORM\ManyToMany(targetEntity="User", mappedBy="entities")
*/
protected $users;
}

вы можете сделать это

$user->add($entity);

$em = $this->getDoctrine()->getManager();
$em->flush();

Вы можете пропустить persist если $user извлекается из базы данных, и если это не новый объект.

0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector