0

我不知道为什么这不起作用:

->add('productSearchType', EntityType::class, array(
                'label' => 'entity.text.product.product_search_number_type',
                'class' => AC\ProductBundle\Entity\ProductSearchType::class,
                'choice_label' => 'designation',
                'expanded' => false,
                'placeholder' => 
'entity.text.product.select_product_search_number_type',
                'query_builder' => function (EntityRepository $er) {
                    return $er->createQueryBuilder('e')
                            ->orderBy('e.designation', 'ASC');
                },
            ))

那是错误信息:

可捕获的致命错误:传递给
Symfony\Bridge\Doctrine\Form\Type\DoctrineType::__construct()的参数 1
必须实现接口 Doctrine\Common\Persistence\ManagerRegistry,
没有给出,在 (...)\src\Symfony\ 中调用第 85 行的Component\Form\FormRegistry.php
并定义 (...)

4

1 回答 1

0

尝试像这样创建表单,以便表单工厂可以访问容器:

$form = $this->get('form.factory')
    ->create(VariantType::class, $entity, ['method' => 'POST'])
    ->getForm();
于 2017-04-25T12:23:55.727 回答