我正在使用扩展构建器进行小型扩展,该扩展构建器有两个模型,公司和类别。每个都有一个图像场,理论上应该保持一个或多个图像。我关注this tutorial,并将getImage()函数定义为ObjectStorage,如下所示:
/**
* mypictures
* @var \TYPO3\CMS\Extbase\Persistence\ObjectStorage<\TYPO3\CMS\Extbase\Domain\Model\FileReference>
*/
protected $mypictures;
/**
* Returns mypictures
*
* @return \TYPO3\CMS\Extbase\Persistence\ObjectStorage<\TYPO3\CMS\Extbase\Domain\Model\FileReference> $postpictures
*/
public function getMypictures() {
return $this->mypictures;
}
但页面加载大约30秒后再打印出来。有谁知道我做错了什么?
编辑:超时问题消失了。现在它说:&#34; ForViewHelper只支持实现\ Traversable interface&#34;
的数组和对象答案 0 :(得分:2)
可能只是在您提供的代码段中丢失了,但您必须在模型中初始化存储对象:
public function __construct() {
// Do not remove the next line: It would break the functionality
$this->initStorageObjects();
}
/**
* Initializes all ObjectStorage properties
*
* @return void
*/
protected function initStorageObjects() {
$this->mypictures = new \TYPO3\CMS\Extbase\Persistence\ObjectStorage();
}
然后,清除系统缓存并重试。