导入单个yml配置文件


22

是否可以通过指定路径导入一个yml配置文件?

还是特定模块中包含的一组yml文件?


您可以启用配置模块,然后使用单个导入页面。

感谢@IvanJaros,您能否将评论扩展为答案,并详细说明如何启用配置模块和单个导入页面的路径?有什么方法可以通过drush或drupal控制台获得相同的结果?如果有效,我会接受答案。干杯!
David Riccitelli

我想你可以把文件放到config / sync目录,然后运行drush cim,我一直将ui用于单个配置文件。

这将导入sync目录中的所有文件。
David Riccitelli,2016年

Answers:


15

您可以使用

$ drush cim --partial --source=only-few-configs/

您的帮助说:

$ drush cim --help
Import config from a config directory.

Examples:
 drush config-import --partial             Import configuration; do not remove missing configuration.

Arguments:
 label                                     A config directory label (i.e. a key in $config_directories array in 
                                           settings.php). Defaults to 'sync'

Options:
 --partial                                 Allows for partial config imports from the source directory. Only updates and new 
                                           configs will be processed with this flag (missing configs will not be deleted).   
 --preview=<list>                          Format for displaying proposed changes. Recognized values: list, diff. Defaults   
                                           to list.                                                                          
 --source                                  An arbitrary directory that holds the configuration files. An alternative to      
                                           label argument

Aliases: cim

3
很好,但是如果要导入一个文件,必须将其移动到另一个部分目录吗?这很奇怪,不是吗?
rreiss '18

14

您可以通过运行以下命令来导入一种配置:

 drupal config:import:single

如果您尝试运行多个导入,则可以为此创建一个链。

命令文档-config:import:single


3
还有拉长草的选项吗?
Benedikt

5
针对Lando / Docker用户的提示-例如drupal config:import:single --directory="/app/config/sync" --file="foo.settings.yml",在容器中运行时,您需要指定完整路径,而不仅仅是在/ app中运行时指定config / sync-否则,您将得到[ERROR]值不能为空。(幸运的是,Drupal Console的源代码很好并且易于调试。)
William Turrell,

4

如果没有安装Drush或Drupal控制台,请使用以下步骤(在D 8.0.1中成功执行):

  1. 转到管理->配置->配置同步。可以导出单个项目或整个站点的配置。我为单个user.mail.yml文件做了。导出所需的配置。
    1. 修改对导出配置的更改。
    2. 导入修改后的配置
    3. 导入成功后,请确保清除config和cache_config表中的现有数据(提取数据库的转储并搜索配置关键字。这样,您将知道存在该条目的表。)

注意-务必进行备份。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.