选择现有实体或创建新实体

时间:2014-10-13 14:00:50

标签: php forms symfony

我已阅读Symfony 2 Entity field type with select and/or add new和此Symfony2 Form : Select an entity or add a new one,但这些主题并未解决我想要的问题。

我希望用户从现有实体中进行选择,但如果他愿意,应该能够在点击按钮(将呈现表单)后创建一个新实体。我知道如何在select中渲染实体,我知道如何渲染字段,允许用户创建很少的新实体(集合),但我不知道如何将它们一起渲染。

现在我选择了:

->add('place', 'entity', array(
        'required' => false,
        'class' => 'MyBundle\Entity\Place',
))

但正如我所说 - 我想允许用户添加新实体,如果他想。我正在尝试收藏:

->add('place', 'collection', array(            
    'required' => false,
    'data' => [new Place()],
    'type' => new \MyBundle\Form\Place\PlaceType(),
    'allow_add' => true,
    'options' => array( 'label' => false),
))

但是只允许用户创建新实体,而不是从现有实体中选择......

1 个答案:

答案 0 :(得分:0)

如果您希望他们能够添加新实体并选择现有实体,我建议您查看表单事件。

http://symfony.com/doc/current/cookbook/form/dynamic_form_modification.html

相关问题