【发布时间】:2021-10-25 17:36:38
【问题描述】:
当在 Symfony 5.3 项目的 omines 数据表中使用自定义查询时,如下所示:
use Doctrine\DBAL\Query\QueryBuilder;
...
$table->createAdapter(ORMAdapter::class, [
'entity' => User::class,
'query' => function (QueryBuilder $builder) {
$builder
->select('u')
->from(User::class, 'u')
->where('u.roles LIKE :role')
->setParameter('role', '%ROLE_AGENT%')
;
},
]);
我收到以下错误:
传递给 App\Controller\Admin\AgentController::App\Controller\Admin{Closure}() 的参数 1 必须是 Doctrine\DBAL\Query\QueryBuilder 的实例,给定的 Doctrine\ORM\QueryBuilder 实例。
我尝试使用数据表文档中描述的自定义条件,但得到了相同的错误。
我的导入是正确的,为什么会出现这个错误?
【问题讨论】:
-
真的不是,因为它是
ORMAdapter,它确实需要一个ORM\QueryBuilder,而不是一个DBAL。
标签: datatables symfony5