1

我有一个带有 SonataAdminBundle 2.0 的 Symfony 2.0。这是我的一个管理员控制器的一种方法。

protected function configureFormFields(FormMapper $formMapper)
{
    $formMapper
        ->add('name')
        ->add('events', 'sonata_type_collection', array(), array(
            'edit'      => 'inline',
            'inline'    => 'table'
        ))
    ;

    $this->getFormFieldDescription('events')
        ->setAssociationAdmin($this->getConfigurationPool() >getInstance('platform.admin.events'));
}

并且我将 eventsAdmin 控制器与此方法相关联

protected function configureFormFields(FormMapper $formMapper)
{
    $currentObjectId = '' // this is what I want???

    $formMapper
        ->add('name')
        ->add('time')
        ->add('trigger')
    ;
}

所以我的父母表格看起来像

名称:blablabla
事件
1. - delete1 - name1 - time1 - trigger
2. - delete2 - name2 - time2 - trigger
3. - delete3 - name3 - time3 - trigger

我想要的是在关联管理员中获取当前对象的 ID。“触发器”是一个选择框,它取决于当前对象 ID。我必须用它进行查询。

Sonata\AdminBundle\Admin\Admin中有一个方法->getSubject()但它总是返回第一个“事件”对象。

有什么建议么?

4

0 回答 0