我无法在Extbase MVC中运行FindBy
魔术函数属性
$title=array(0 =>'Books Day');
$each_event=$this->eventRepository->findByTitle($title);
$each_event
正在返回TYPO3\CMS\Extbase\Persistence\Generic\QueryResult
类型的对象。
我该如何工作?
我也尝试过将字符串传递给findByTitle
和findByOne
。两个都不工作! :(
我正在使用TYPO3 6.1和扩展构建器。
这些魔术函数的最后一部分总是需要是数据库中的一个字段。所以“标题”必须在你的模型中。你的对象可能有一个字段“one”,但我想你的意思是findOneByTitle?
对象类型QueryResult是正确的。您可以将其转换为数组以进行调试,例如:
$foo = $query->execute()->toArray();
顺便说一下:检查你的事件存储库是否为空,你可以尝试这个,看看它是否有效:
$result = $this->myRepository->findAll();
正如在documentation所说,它返回一个QueryResultInterface|array
。
因此,你必须像这样循环结果:
foreach($each_event as $single_event) {
$single_event->getProperty();
}
如果您确定它只返回一个值,您也可以通过索引0
访问它:
$each_event[0]->getProperty();