在CreateAdapter中构建查询时,Omines Datatable出错

问题描述 投票:0回答:1

在symfony 4.2中使用QueryBuilder构建数据集合

我有这个

function (QueryBuilder $builder) {
    $builder
        ->distinct()
        ->select('m, b, v, m.lfd')
        ->from(Meldung::class, 'm')
        ->leftJoin('m.lastUser', 'b')
        ->leftJoin('m.process', 'v')
        ->leftJoin('m.messageType', 't');           
}

我从symfony收到此错误消息:

无法从数组中读取属性“id”。也许您打算将属性路径写为“[id]”。

当我在选择列表中添加m.lfd(或某些其他特定字段)时,会出现此错误消息

我不知道如何处理这个问题。

orm datatables adapter
1个回答
0
投票

您需要将水合物选项设置为Query :: HYDRATE_ARRAY:

        ->createAdapter(ORMAdapter::class, [
            'hydrate' => \Doctrine\ORM\Query::HYDRATE_ARRAY,
            'entity' => Meldung::class,
            'query' => function (QueryBuilder $builder) {
                $builder
                    ->distinct()
                    ->select('m, b, v, m.lfd')
                    ->from(Meldung::class, 'm')
                    ->leftJoin('m.lastUser', 'b')
                    ->leftJoin('m.process', 'v')
                    ->leftJoin('m.messageType', 't');
            }
        ])
© www.soinside.com 2019 - 2024. All rights reserved.