我有两个实体:“事件”和“事件图像”。一个事件可以有多个图像。
这是在事件表上定义的关系:
**
* Event
*
* @ORM\Table()
* @ORM\Entity(repositoryClass="AppBundle\Entity\EventRepository")
*/
class Event
{
/**
* @ORM\OneToMany(targetEntity="EventImage", mappedBy="event")
*/
protected $eventImages;
}
这是在 EventImage 表上定义的关系:
/**
* EventImage
*
* @ORM\Table()
* @ORM\Entity(repositoryClass="AppBundle\Entity\EventImageRepository")
*/
class EventImage
{
/**
* @ORM\ManyToOne(targetEntity="Event", inversedBy="eventImages")
* @ORM\JoinColumn(name="event_id", referencedColumnName="id")
*/
protected $event;
}
在 EventAdmin 的“configureFormFields”中
$formMapper
->add('eventImages', 'sonata_type_collection',array(), array(
'edit' => 'inline',
'inline' => 'standard',
'sortable' => 'listOrder'
))
在我的 EventImageAdmin 中的“”中
$formMapper
->add('id')
->add('imagePath', 'text')
->end()
;
现在我看到了一些示例,您可以在其中获得一个漂亮的格式化表格,每条拉取的记录都在一行中,带有一个用于删除该行的复选框和一个拖动选项,还有一个“添加新行”按钮来链接一个新元素(或添加一个新的)
但我得到的只是关联 eventImage 记录的级联列表,没有在表格中格式化,没有“添加新行”选项。
我究竟做错了什么?