是否可以在“表单生成器”中添加与构建表单的对象无关的实体?
我试图解释
我有文章,类别,超级类别。 我希望我的用户先选择SuperCategory,然后选择Category,然后选择Article。
在表单构建器中,我想将SuperCategory添加到ArticleType,但是SuperCategory是Category中的ManyToOne关系,而Article中是ManyToOne关系。
这是我的代码:
$builder->add('SuperCategory', EntityType::class, [
'class' => SuperCategory::class,
'choice_label' => 'Title'
]);
如预期的那样,它不起作用,因为Article类不了解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".
答案 0 :(得分:0)
$builder->add('SuperCategory', EntityType::class, [
'class' => SuperCategory::class,
'choice_label' => 'Title',
'mapped' => false
]);
The
'mapped' => false
是解决方案!