配置导入器
配置导入器提供跨多个系统(例如开发、暂存和生产)的一致配置。这对于管道部署等部署策略很有用。
Magento 使用配置导入器将配置数据从共享配置文件 config.php 导入到适当的存储中,例如数据库。
使用 magento app:config:import 命令从命令行导入配置。
目前 Magento 有以下导入器:
Magento\Config\Model\Config\Importer
Magento\Store\Model\Config\Importer
Magento\Theme\Model\Config\Importer
导入器界面
所有 Magento 导入器都实现了接口 Magento\Framework\App\DeploymentConfig\ImporterInterface 并定义了以下方法:
import(array data 是来自 config.php 的配置数组。
此方法应返回导入过程中生成的消息数组。
getWarningMessages(array $data) - 生成并返回警告消息数组,其中包含有关系统中将要更改的内容的信息。
$data 参数与方法导入相同。
如果此方法返回一个空数组,则导入将在没有交互的情况下继续进行。
您还可以提供诸如您要继续 [是/否] 之类的消息吗?
如果用户输入no,则取消导入;否则,如果用户输入 yes,则处理导入。
实施您自己的进口商
创建一个实现 Magento\Framework\App\DeploymentConfig\ImporterInterface 的 Importer 类。
在模块的 di.xml 中注册导入器:
<type name="Magento\Deploy\Model\DeploymentConfig\ImporterPool">
<arguments>
<argument name="importers" xsi:type="array">
<item name="i18n" xsi:type="array">
<item name="class" xsi:type="string">Vendor\Module\Model\Config\Importer</item>
<item name="sortOrder" xsi:type="number">110</item>
</item>
</argument>
</arguments>
</type>
前面示例中的示例代码在 config.php 中为 i18n 数组注册了导入程序 Vendor\Module\Model\Config\Importer。
i18n 数组的队列顺序为 110,这意味着此导入程序在排序顺序值小于 110 的导入程序之后运行,并且 i18n 部分中的值已更改。
更多magento教程参考:
1.png 2.png
网友评论