我正在尝试使用TYPO3和自TYPO3 v9开始可用的新RouteEnhancers来建立类似REST的API。就我而言,我需要通过扩展程序来设置/扩展站点配置,而不是编辑config.yaml,因为在安装扩展程序或创建新的站点配置后,您不想复制某些代码。是否有针对这种情况的最佳实践解决方案?
routeEnhancers:
MyExtensionlugin:
type: Extbase
extension: MyExtension
plugin: Listing
routes:
- { routePath: '/api/objects', _controller: 'Api::list', _arguments: {'pageType': '1557996244'} }
- { routePath: '/api/objects/{objectUid}', _controller: 'Api::show', _arguments: {'pageType': '1557996244'} }
defaultController: 'Api::list'
defaults:
objectUid: '0'
requirements:
objectUid: '\d+'
答案 0 :(得分:3)
您实际上可以在站点配置中使用导入。这是example from the blog extension:
imports:
- { resource: "EXT:blog/Configuration/Routes/Default.yaml" }
因此,您可以像将routeEnhancers
配置一样放在一个单独的文件中,并在站点配置顶部使用imports
来加载和合并它。