【问题标题】:How to solve Symfony 5 Omines Datatables problem如何解决 Symfony 5 Omines 数据表问题
【发布时间】: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


【解决方案1】:

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

【讨论】:

    猜你喜欢
    • 2020-08-19
    • 2020-12-11
    • 1970-01-01
    • 2020-10-01
    • 2019-02-13
    • 1970-01-01
    • 2010-12-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多