在 Symfony4 的表单生成器中添加另一个 EntityType

Adding another EntityType in a formbuilder in Symfony4

是否可以在表单生成器中添加与我们构建表单的对象无关的实体?

我试着解释一下

我有文章、类别、超级类别。 我希望我的用户首先选择 SuperCategory,然后是 Category,然后是 Article。

在表单生成器中,我想将 SuperCategory 添加到 ArticleType,但 SuperCategory 是 Category 中的 ManyToOne 关系,而 Category 是 Article 中的 ManyToOne 关系。

这是我的代码:

$builder->add('SuperCategory', EntityType::class, [
    'class' => SuperCategory::class,
    'choice_label' => 'Title'
]);

不出所料,它不起作用,因为文章 class 不知道 SuperCategory。

不过,我需要展示这些 SuperCategory 才能制作 "FormFlow"。可能吗?

这是错误(符合预期,不足为奇):

"Neither the property "SuperCategory" nor one of the methods 
"getSuperCategory()", "superCategory()", "isSuperCategory()", 
"hasSuperCategory()", "__get()" exist and have public access in class 
"App\Entity\Article".
$builder->add('SuperCategory', EntityType::class, [
                'class' => SuperCategory::class,
                'choice_label' => 'Title',
                'mapped' => false
]);

'mapped' => false

是解决方案!