Drupal 8 模块开发 5.2 : 导出配置

蒲公英 提交于 周四, 08/17/2017 - 15:57
Drupal8模块开发

原文地址:
https://docs.acquia.com/article/lesson-52-exporting-configurations 

导出配置

有三种方法可以导出配置文件。

  • 完全导出 - 把站点的所有配置导出为一个压缩包
    导航到 /admin/config/development/configuration/full/export,点击“导出”按钮,叫做 config-xxx.tar.gz 的压缩包会被下载下来。
  • 部分导出 - 使用单独的导出配置,分别导出每个文件。
    导航到 /admin/config/development/configuration/single/export,使用“配置类型”和“配置名称”选择你要导出的配置。
  • Drush - 用 Drush 导出配置
    上节我们已经使用 Drush 导出了配置。导出结构类似这样: sites/default/files/config_[your config path]/sync
    drush config-export
    导出后我们就可以把想要的配置文件拷贝到自己的模块内了。

创建空模块

创建空模块的步骤如下:

  1. 在 Drupal 8 的模块目录创建 fields_example 目录
  2. 创建子目录 config
  3. 在 config 内创建目录 install
  4. 从导出的配置内拷贝 node.type.external.yml 文件放在 config/install 目录下
  5. 在 fields_example 根下创建 external.info.yml 文件。起个模块名(可以叫:External Link Content Type),像其他模块那样定义 type,description,package 和 core version。

结构类似这样:
结构  

是时候看下通过模块怎样创建内容类型了。

  1. 去 /admin/structure/types,删除我们之前创建的 External 内容类型。
  2. 去“扩展”激活 External Link Content Type 模块
  3. 去 /node/add/external,你会看到 External 内容类型的节点追加表单

External

现在我们有了一个提供 External 内容类型且能够正常运行的模块。去“扩展”卸载这个模块,为下一步做准备。  

增加字段配置文件

把上一节我们导出的其他配置文件放置在 fields_example/config/install/ 目录内。

应该有这些文件:

  • core.entity_form_display.node.external.default.yml
  • core.entity_view_display.node.external.default.yml
  • core.entity_view_display.node.external.teaser.yml
  • field.field.node.external.body.yml
  • field.field.node.external.field_image.yml
  • field.field.node.external.field_url.yml
  • field.storage.node.field_url.yml

重新激活这个模块。去 /node/add/external 查看节点追加表单,body、url 和 screenshot 字段都会被表示出来。