如何解决 Symfony 5 Omines 数据表问题

How to solve Symfony 5 Omines Datatables problem

在 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%')
        ;
    },
]);   

我收到以下错误:

Argument 1 passed to App\Controller\Admin\AgentController::App\Controller\Admin{Closure}() must be an instance of Doctrine\DBAL\Query\QueryBuilder, instance of Doctrine\ORM\QueryBuilder given.

我试过使用数据表文档中描述的自定义条件,但遇到了同样的错误。

我的导入是正确的,为什么会出现这个错误?

错误消息具有误导性:实际上应该为数据表查询函数提供 Doctrine\ORM\QueryBuilder 实例,而不是导致错误的 Doctrine\DBAL\Query\QueryBuilder 实例。