Extbase: Bilder in Model behandeln


July 16, 2015 at 12:02
Typo3

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>

Tags: extbase FAL image treadIdAsReference


Hinterlasse einen Kommentar: