Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typo3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在typo3中的流体上循环对象存储项_Typo3_Extbase - Fatal编程技术网

如何在typo3中的流体上循环对象存储项

如何在typo3中的流体上循环对象存储项,typo3,extbase,Typo3,Extbase,我的插件上有一个相似的功能,用户可以喜欢一个想法,因为我有一个mm表,我把想法和用户联系起来。我想禁用或启用“like”按钮,这取决于用户是否喜欢这个想法。 当我从我的模型中调用$this->votedUsers时,我的流体模板会得到这个。这是什么?不是数组吗?我如何循环检查用户是否已经喜欢这个想法 这就是我的Idea模型中的$This->votedUsers属性所包含的内容,我想循环检查FrontendUser是否已经喜欢该Idea,并禁用或启用de按钮 这就是{u all}的样子 我会在

我的插件上有一个相似的功能,用户可以喜欢一个想法,因为我有一个mm表,我把想法和用户联系起来。我想禁用或启用“like”按钮,这取决于用户是否喜欢这个想法。 当我从我的模型中调用$this->votedUsers时,我的流体模板会得到这个。这是什么?不是数组吗?我如何循环检查用户是否已经喜欢这个想法

这就是我的Idea模型中的$This->votedUsers属性所包含的内容,我想循环检查FrontendUser是否已经喜欢该Idea,并禁用或启用de按钮

这就是{u all}的样子


我会在您的创意模型中这样做:


公共函数isLikedByCurrentUser():bool
{
$currentUser=GeneralUtility::makeInstance(ObjectManager::class)
->获取(FrontendUserRepository::类)
->findByUid($GLOBALS['TSFE']->fe_user->user['uid']);
如果($currentUser){
返回$this->votedUsers->contains($currentUser);
}
返回false;
}

之后,您可以通过
…在流体中检查它

谢谢,在模型中这样做很有意义。我不知道那个代码是怎么工作的,不过,我对打字3还不熟悉。我总是变得虚伪。即使$currentUser有正确的FrontendUser,我的mm表也有正确的关系,并且$this->votedUsers确实包含相同的用户。您能调试
$currentUser
中的内容吗?是同一个前端用户吗?查看uid和类名。您使用哪种类型的TYPO3版本?$curranUser是FrontendUser模型类型。最后一张图片是$currentUser。我使用的是10.4,看起来votedUsers的类型是
TYPO3\CMS\Extbase\Domain\Model\FrontendUser
,而您当前的用户是
Hebotek\HeboIdeas\Domain\Model\FrontendUser