TYPO3 hat zwei kleine Gemeinheiten in sich, die einem manchmal das Leben erschweren:
- zum einen den Cache (bzw. inzwischen die Caches),
- zum anderen seine Verschwiegenheit über genauere Fehlerursachen (in produktiven Umgebungen).
Ersteres lässt sich v.a. während der Extbase-basierten Entwicklung (neben altbekannten TypoScript-Einstellungen) über eine Änderung am CachingFramework lösen. Denn nach Änderungen im Model bzw. in den Annotationen im Controller oder Repository entstehen Fehlermeldungen oftmals durch veraltete Einträge im Reflection Cache von Extbase, welcher Modelproperties und Annotationen speichert.
Die Verschwiegenheit bei Fehlern lässt sich mit einer Reihe von Schaltern beheben, sodass TYPO3 sehr auskunftfreudig wird.
Zum schnellen Hinzunehmen bzw. Überschreiben von Einstellungen, und um unabhängig vom Install-Tool Konfigurationswerte festzulegen (z.B. in der Development-Umgebung), lassen sich diese in die Datei typo3conf/AdditionalConfiguration.php schreiben.
Bei mir bewährt hat sich:
<?php // -- Fuer TYPO3-Debugging/-Development ---------------------------------- $TYPO3_CONF_VARS['SYS']['displayErrors'] = '1'; $TYPO3_CONF_VARS['SYS']['enable_errorDLOG'] = '1'; $TYPO3_CONF_VARS['SYS']['enable_exceptionDLOG'] = '1'; $TYPO3_CONF_VARS['SYS']['sqlDebug'] = '1'; $TYPO3_CONF_VARS['SYS']['enable_DLOG'] = '1'; $TYPO3_CONF_VARS['SYS']['enableDeprecationLog'] = '1'; $TYPO3_CONF_VARS['FE']['debug'] = '1'; // Extbase Reflection Cache während Entwicklung/Debugging deaktivieren $GLOBALS['TYPO3_CONF_VARS']['SYS']['caching']['cacheConfigurations']['extbase_reflection']['backend'] = 'TYPO3\CMS\Core\Cache\Backend\NullBackend'; $GLOBALS['TYPO3_CONF_VARS']['SYS']['caching']['cacheConfigurations']['extbase_object']['backend'] = 'TYPO3\CMS\Core\Cache\Backend\NullBackend'; // -- Fuer TYPO3-Debugging ----------------------------------------------- ?>