0

我只需要将所有结果字段从 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在结果上使用,一切都很好,但我不知道如何对分页结果做同样的事情

4

1 回答 1

0

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

于 2015-12-16T16:00:50.753 回答