我正在寻找一种扩展 Symfony 2 EntityType 的方法
Symfony\Bridge\Doctrine\Form\Type\EntityType
就像在扩展此类型的新类型中一样,而不是创建FormTypeExtension
- 我无法弄清楚。有谁知道这样做的正确方法?
我试过简单地扩展它:
class NestedEntityType extends EntityType {
public function getName() {
return $this->getBlockPrefix();
}
public function getBlockPrefix() {
return 'nested_entity';
}
}
然后在奏鸣曲管理课上我有:
protected function configureFormFields(FormMapper $formMapper)
{
$formMapper->add('types', NestedEntityType::class, [
'label' => false,
'multiple' => true,
'expanded' => true,
'by_reference' => false
]);
}
但不幸的是它会导致致命错误:
可捕获的致命错误:传递给 Symfony\Bridge\Doctrine\Form\Type\DoctrineType::__construct() 的参数 1 必须实现接口 Doctrine\Common\Persistence\ManagerRegistry,没有给出,调用
我需要保留 的全部功能EntityType
,但有一个例外 - 它的呈现方式。这就是为什么我需要扩展这个类型(我在其他领域使用它,所以我不能只为它修改模板!)。
我正在使用Symfony 2.8(仅作记录)。