Symfony条令关系-删除反面的实体
我的问题是如何在不经过每个关联的情况下删除反面的实体并手动删除它Symfony条令关系-删除反面的实体,symfony,doctrine-orm,Symfony,Doctrine Orm,我的问题是如何在不经过每个关联的情况下删除反面的实体并手动删除它 <?php /** @Entity */ class User { // ... /** * @OneToMany(targetEntity="Address", mappedBy="user") */ private $addresses; // ... public function __construct() { $this->add
<?php
/** @Entity */
class User
{
// ...
/**
* @OneToMany(targetEntity="Address", mappedBy="user")
*/
private $addresses;
// ...
public function __construct() {
$this->addresses = new ArrayCollection();
}
}
/** @Entity */
class Address
{
// ...
/**
* @ManyToOne(targetEntity="User", inversedBy="features")
* @JoinColumn(name="user_id", referencedColumnName="id")
*/
private $user;
// ...
}
我希望这会有帮助。
只需将级联添加到反向边实体
/** @Entity */
class User
{
// ...
/**
* @OneToMany(targetEntity="Address", mappedBy="user", cascade={"persist", "remove"})
*/
private $addresses;
// ...
public function __construct() {
$this->addresses = new ArrayCollection();
}
/*
* @return ArrayCollection
*/
public function getAddresses (){
return $this->addresses:
}
/*
* @pram Address $address
*/
public function setAddresses (Address $address){
$this->addresses->add ($address);
}
}
您可以使用选项ondelete=cascade
创建DB外键,这样DB将自动删除所有子项。我应该将ondelete放在哪里?关于多人关系?