Contao 3 speichert ja nun nicht mehr die Dateipfade + Dateiname z.B. im Feld singleSRC sondern eine Zahl.
(der Pfad + Dateiname steht nun zentralisiert in einer anderen Tabelle)
Auch beim Update von Contao 2 auf 3 hat der Updater eine Methode updateFileTreeFields für alle fileTree Typen im DCA.
Der wandelt alles um beim Update was den Typ fileTree im DCA hat.
Im Falle meines Banner Moduls z.B. heißt das, wähle ich im Backend ein Bild aus, steht nach dem Speichern kein Pfad sondern eine Zahl im Feld banner_image.
Beim Anzeigen im Frontend, im Backend (DCA Ausgabe) oder im Callback Backend Modul muss nun aus der Zahl wieder der gesuchte Pfad und Dateiname werden.
Hier mal ein Auszug wie das geht.
in $objFile->path steht nun der gesuchte Inhalt.PHP-Code:
// in singleSRC Spalte steht nun eine Zahl
// Check for version 3 format
if (!is_numeric($this->singleSRC))
{
return '<p class="error">'.$GLOBALS['TL_LANG']['ERR']['version2format'].'</p>';
}
$objFile = \FilesModel::findByPk($this->singleSRC);
Die Art der Rückmeldung mit dem Versionshinweis, wenn irgendwie doch noch der Pfad und nicht eine Zahl enthalten ist, muss natürlich angepasst werden, jenachdem wo ich mich grad befinde (BE DCA, FE, BE Callback)
Lesezeichen