2014-10-18 37 views
1

我有一个经典的课程和日期关系(一个课程有很多日期)。下一门课程将在一个页面上列出。我使用正常的findAll()方法将所有日期加载到startDate进行排序。现在我需要家长的课程信息,以显示课程的细节。如何获得从TYPO3的子对象的父信息extbase

在日期控制器我有

/** 
* Course 
* 
* @var \TYPO3\CMS\Extbase\Persistence\ObjectStorage<\ITServicePN\ItspnKurse\Domain\Model\Kurse> 
*/ 
protected $kurse = NULL; 

/** 
* Returns the Courses 
* @return \TYPO3\CMS\Extbase\Persistence\ObjectStorage<\ITServicePN\ItspnKurse\Domain\Model\Kurse> $kurse 
*/ 
public function getKurse() { 
    return $this->kurse; 
} 

用F时,这将返回我的过程:调试{} date.kurse:

TYPO3\CMS\Extbase\Persistence\ObjectStorageprototypeobject (1 items) ... => ITServicePN\ItspnKurse\Domain\Model\Kurseprototypepersistent entity (uid=8, pid=51) 
     title => 'The name of the course' ... 

但是,当我试图访问{date.kurse .title}我得到了一个TYPO3例外:

#1: PHP Warning: spl_object_hash() expects parameter 1 to be object, string given in /var/www/vhosts/it-service-pn.de/cetba/typo3_src-6.2.3/typo3/sysext/extbase/Classes/Persistence/ObjectStorage.php line 174 

该怎么做,以获得正确的父母对象信息extbase和流体?

回答

2

根据你的型号,kurse是一个ObjectStorage。这意味着在访问流体中的date.kurse时,您将获得一个Array。 您可以通过该数组迭代流体与for-Viewhelper

<f:for each="{date.kurse}" as="kurs"> 
    Kurs: {kurs.title} 
</f:for> 

您还可以打印迭代的指数来获得kurses的编号列表。

<f:for each="{date.kurse}" as="kurs" iteration="i"> 
    {i.cycle}. Kurs: {kurs.title} 
</f:for> 
相关问题