在我的 TYPO3 扩展中,我必须在
TYPO3\CMS\Extbase\Configuration\ConfigurationManager
(TYPO3 v11,PHP 8.1)中使用
Configuration/TCA/Overrides/tt_content.php
。
当我用
GeneralUtility::makeInstance(ConfigurationManager::class)
实例化它时,在初始页面加载后,我总是在随机第三方插件(不是我的)上得到“扩展“X”和插件“Y”的默认控制器无法确定”清除缓存时。
从那里一切都很好,但是这个错误总是弹出,有点让人神经紧张,我想摆脱它。
如果我不访问该文件中的
ConfigurationManager
,即使我清除缓存,错误也会消失。
我猜这与类加载的顺序有关,但我在 TYPO3 的文档中找不到任何信息,如果允许在该位置使用
ConfigurationManager
或如何正确访问它。
也许您可以将动态逻辑移至 PSR-14 事件?该人应该拥有所有 DI 并且也可以应用更改/覆盖 - 而不影响 TCA 缓存行为: