在CreateAdapter中建立查询时,Omines Datatable发生错误

时间:2019-04-17 10:54:53

标签: orm datatables adapter

在symfony 4.2中使用omnes数据表构建数据收集并使用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(或其他一些特定字段)时,就会出现此错误消息

我不知道该如何处理。

1 个答案:

答案 0 :(得分: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');
            }
        ])