无法将分页结果上的数组字段重命名为 FIELDNAME 类型



我只需要将PHPNAME类型的所有结果字段重命名为FIELDNAME。我正在运行这样的查询:

$members = MemberQuery::create()->filterByOrganizerId($organizerId)
        ->setFormatter($formatter)
        ->useTableOneQuery()
            ->useTableTwoQuery()
                ->where('TableTwo.Status != ?', TableTwo::STATUS_FAILED)
            ->endUse()
        ->endUse()
        ->groupById()
        ->paginate($page, $pageSize);

其中$formatter为:

    $arrayDataFetcher = new ArrayDataFetcher([]);
    $arrayDataFetcher->setIndexType(TableMap::TYPE_FIELDNAME);
    $formatter= new ArrayFormatter();
    $formatter->setDataFetcher($arrayDataFetcher);

但是每个数组仍然有PHPNAME字段名。当我不给结果分页,只使用find()时,我可以简单地在结果上使用toArray,一切都很好,但我不知道如何对分页的结果

执行同样的操作

解决方案非常简单。只需在结果中使用toArray()即可。不要相信自动完成。IDE没有显示该方法,但它存在!信任文档,在这里查看,您会看到注释,分页的结果表现得像集合,这正是我们所需要的。

相关内容

  • 没有找到相关文章

最新更新