如何使用sonata_type_collection指定目标实体类型

时间:2018-02-09 09:07:38

标签: php symfony sonata-admin

我正在使用Sonata Page Bundle来构建一组包含项目信息的页面 - 每页一个项目。在每个页面上,我想要包含项目的多个同义词。我创建了一个包含两个字段的同义词实体。

我现在想在add()定义中使用configureFormFields方法添加对我的新同义词实体的引用。以下代码产生错误,指出The current field 'Synonym' is not linked to an admin. Please create one for the target entity : ''

            ->add('Synonym', 'sonata_type_collection', array(
                'label' => "Synonyms",
                'cascade_validation' => true,
                'required' => false
            ), array(
                'edit' => 'inline',
                'inline' => 'table'
            ))

...我尝试修改代码,看起来像:

                'cascade_validation' => true,
                'required' => false,
                'target_entity' => 'AppBundle\Entity\Synonym'
            ), array(

...导致同样的错误。

如何告诉我的管理员类这是对我想要内联编辑的一组同义词对象的引用?

编辑:

我也试过

'targetEntity' => 'AppBundle\Entity\Synonym'

......没有运气。该应用程序似乎仍无法弄清楚我所针对的实体是什么。

1 个答案:

答案 0 :(得分:0)

在我的数组中添加“admin_code”定义时发现至少部分答案,如

所述

https://symfony.com/doc/master/bundles/SonataAdminBundle/reference/form_types.html

我仍然收到错误,但现在至少有一个不同的错误。