2
我有一个名为上传一个实体和另一个名为店删除OneToOne unidirectionnal关系
的店只能有一个上传
class Shop
{
/**
* @var integer $id
*
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
/**
* @var Upload
*
* @ORM\OneToOne(targetEntity="Vendor\SystemBundle\Entity\Upload",cascade={"all"})
*/
private $myfile;
}
class Upload
{
/**
* @var integer $id
*
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
/**
* @var string $name
*
* @ORM\Column(name="name", type="string")
*/
private $name;
/**
* @var string $path
*
* @ORM\Column(name="path", type="string")
*/
private $path;
/**
* @var string $uniqId
*
* @ORM\Column(name="uniqId", type="string", nullable=true)
*/
private $uniqId;
/**
* @var integer $size
*
* @ORM\Column(name="size", type="integer", nullable=true)
*/
private $size;
/**
* @var string $extension
*
* @ORM\Column(name="extension", type="string", nullable=true)
*/
private $extension;
}
!因为我的班车是自动生成的,所以我无法指定到我的班级的关系上传
有没有办法删除关系并删除相应的项目。
现在,如果我想删除我的实体上传,它说我有一个外键约束(这是正常的),所以我试图直接从商店删除关系,但我不知道如何做
嗨,我想保持关系,但想清除相关项目。让我选择一个“上传”他们我想要删除它 – Chopchop
如果你确实想要删除店铺实例上传,执行getUpload()方法,然后'$ this-> getDoctrine() - > getManager() - > remove($ upload); $ this-> getDoctrine() - > getManager() - > flush();'?默认情况下它是可空的。 – alex88