1

我使用 EasyAdmin 3。

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

  • 通讯(ManyToOne => NewsletterItem)
    • 通讯项目(ManyToOne => NewsletteItemSub)
      • 时事通讯ItemSub

在 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(),

我现在拥有的。

4

1 回答 1

0

创建 NewsletterItemSubType 表单类并将其嵌入到 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

于 2021-05-17T14:21:43.853 回答