Hallo,
ich arbeite gerade das Einsteigertutorial durch und bin auf das gleiche Problem gestossen (und hab eine Lösung gefunden)
Die DCA Definition muß so aussehen
Code:
'path' => array(
'label' => &$GLOBALS['TL_LANG']['tl_screencast']['path'],
'inputType' => 'fileTree',
'exclude' => true,
'eval' => array(
'files' => true,
'fieldType' => 'radio',
'extensions' => 'mp3,mp4,avi'
),
'load_callback' => array(
array('tl_screencast', 'loadFile' )
),
'save_callback' => array(
array('tl_screencast', 'saveFile')
),
'sql' => 'blob NULL'
),
Dann im Verzeichnis modules die Datei tl_screencast.php (bzw mit Deinem Modulname)
Inhalt
Code:
<?php
class tl_screencast extends Backend
{
public function saveFile($value) {
if (version_compare(VERSION,'3.2','>=')) {
$uuid = String::binToUuid($value);
$objFile = FilesModel::findByUuid($uuid);
$value = $objFile->path;
}
return $value;
}
public function loadFile($value) {
if (version_compare(VERSION,'3.2','>=')) {
$objFile = FilesModel::findByPath($value);
$value = $objFile->uuid;
}
return $value;
}
}
?>
Danach die Autoloader.php neu generieren lassen.
Damit hat's dann bei mir funktioniert.
Gruß
Michael
Lesezeichen