当前位置:  开发笔记 > 编程语言 > 正文

typo3 extbase:有没有办法将exec_SELECTgetRows结果映射到实体?

如何解决《typo3extbase:有没有办法将exec_SELECTgetRows结果映射到实体?》经验,为你挑选了1个好方法。

我必须对我的数据库进行一个相当复杂的查询,并且看起来extbase查询无法完成我需要的工作(例如,我需要所有带有article-count> 0的类别).所以我创建了一个查询并使用exec_SELECTgetRows执行它 - 现在,有没有办法将结果映射回实体?

我会感激任何提示.



1> Viktor Livak..:

您可以通过手动触发来实现此目的PropertyMapper.查看关于它的Flow文档.ExtBase中的概念是1:1相同.

您的案例中的一些示例代码可能如下:

$objectStorage = $this->objectManager->get(ObjectStorage::class);
$propertyMapper = $this->objectManager->get(PropertyMapper::class);
$dataArray = $this->db->exec_SELECTgetRows(...);
foreach($dataArray as $data) {
    $dataObject = $propertyMapper->convert($data, \Your\Custom\Object::class);
    $objectStorage->attach($dataObject);
}

推荐阅读
谢谢巷议
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有