Wenn es in einem Model ein Bild geben soll, dann kann man das am besten über FileReference lösen. Zuerst definiert man das Bild, das wir mal $image nennen, im Model:
/**
* image
*
* @var \TYPO3\CMS\Extbase\Domain\Model\FileReference
*/
protected $image = NULL;
/**
* Returns the image
*
* @return \TYPO3\CMS\Extbase\Domain\Model\FileReference $image
*/
public function getImage() {
return $this->image;
}
/**
* Sets the image
*
* @param \TYPO3\CMS\Extbase\Domain\Model\FileReference $image
* @return void
*/
public function setImage(\TYPO3\CMS\Extbase\Domain\Model\FileReference $image) {
$this->image = $image;
}
In der Datenbank ist das Feld „image“ ein normales integer, Länge 11, unsigned. Und nun kann man im Typo3 dem entsprechenden Model ein Bild zuweisen. Um das ganze dann mit Fluid in der view darzustellen, macht man folgendes:
<f:if condition="{item.image}"><f:image src="{item.image.uid}" treatidasreference="1"></f:image></f:if>