0

我编写了一个 symfony 控制台命令,用于从远程服务器下载 CSV 文件并将这些文件中的数据导入我的扩展的一些数据库表中。到目前为止,这工作正常(从 CLI 或调度程序运行)。

但要做到这一切,我需要一堆配置设置(远程服务器的凭据、要下载的文件列表、storagePid 等),而且我不知道把它们放在哪里。暂时都是硬编码的,这显然很糟糕。当然,我可以发明自己的配置文件,将其放在合理的地方并将其包含在我的代码中。但这似乎是混乱和武断的。

是否有推荐/最佳实践方法来存储此类配置设置?理想情况下,我希望它们出现在我的站点包中。对于 FE 插件,我们有 Typoscript 设置 + 常量,我们可以对 BE 模块使用类似的机制。但是这种 CLI 上下文的最佳策略是什么?

4

1 回答 1

0

我认为你可以使用扩展配置(ext_conf_template.txt),你可以在那里设置所有配置,我猜它可以通过调度程序以及 CLI 访问,使用这个 API:

$extensionConfiguration = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance(ExtensionConfiguration::class)->get('my_extension_key');

您可以在此处找到更多信息:扩展配置

在您的命令类中,您可以使用函数 Command::configure() 来初始化命令配置。

请参阅:Symfony 控制台命令

于 2021-01-12T11:18:08.247 回答