EasyAdmin 3:嵌套表单(另一个集合中的调用)

EasyAdmin 3 : Nested forms (Callection in another Collection)

我用的是 EasyAdmin 3.

我正在使用 Symfony 5 创建时事通讯管理器。我的实体就是这样构建的。

在 EasyAdmin 中,我可以在 Newsletter 中添加 NewsletterItem。但是我不知道如何在 EasyAdmin 的 NewsletterItem 中添加一个 NewsletterItemSub。

有人知道吗?

我当前的代码:

CollectionField::new('newsletterItems', 'Newsletter Items')
     ->allowAdd()
     ->allowAdd()
     ->setEntryIsComplex(false)
     ->setEntryType(NewsletterItemType::class)
     ->showEntryLabel(false)
     ->setFormTypeOptions([
         by_reference' => false
        ]
     )
     ->hideOnIndex(),

创建 NewsletteItemSubType 表单 class 并将其嵌入 NewsletterItemType

像这样:

<?php
#...
class NewsletterItemType extends AbstractType
{
    public function buildForm(FormBuilderInterface $builder, array $options): void
    {
        #...

        $builder->add('tags', CollectionType::class, [
            'entry_type' => NewsletteItemSubType::class,
            'entry_options' => ['label' => false],
        ]);
    }

    #...
}

https://symfony.com/doc/current/form/form_collections.html