【发布时间】:2016-03-21 15:49:19
【问题描述】:
我正在尝试解决 symfony 给我的学说映射问题
我得到了这两个文件: Gallery 和 Image 其中一个 Image 对应于一个画廊,一个画廊有许多图像(简单地说,不是吗?)
我按照一些指南设置了我的第一个学说映射,这是我的结果: Gallery.php:
/**
* @ORM\OneToMany(targetEntity="Image", mappedBy="gallery")
*/
private $images;
public function __construct()
{
$this->images = new \Doctrine\Common\Collections\ArrayCollection();
}
public function addImages(\multimediaBundle\Entity\Image $images)
{
$this->images[] = $images;
}
public function getImages()
{
return $this->images;
}
和 Images.php :
/**
* @ORM\ManyToOne(targetEntity="Gallery", inversedBy="Image")
* @ORM\JoinColumn(name="gallery_id", referencedColumnName="id",onDelete="CASCADE")
* @return integer
*/
private $gallery;
public function setGallery(\multimediaBundle\Entity\Gallery $gallery)
{
$this->gallery = $gallery;
}
public function getGallery()
{
return $this->gallery;
}
Symfony 给了我 2 个错误:
类 多媒体束\实体\画廊 映射错误 mediaBundle\Entity\Gallery#images 和 mediaBundle\Entity\Image#gallery 的映射不一致。
和
类 多媒体束\实体\图像 映射错误 关联的multimediaBundle\Entity\Image#gallery指的是不存在的反边字段multimediaBundle\Entity\Gallery#Image。
我真的不知道这个结构有多糟糕,因为在删除画廊时级联删除效果很好,你们对这个映射错误有任何线索吗?
提前致谢
【问题讨论】:
标签: php symfony doctrine mapping one-to-many