Estoy creando un módulo personalizado en Drupal 8. Incluye algunos archivos de configuración YAML.
A medida que me desarrolle, necesito cambiar y agregar a la configuración, por ejemplo, agregar otro campo a mi entidad personalizada.
En la actualidad, la única forma en que he encontrado que Drupal nota los cambios es desinstalar el módulo y volver a instalarlo.
¿Hay alguna manera de hacer que Drupal verifique que los archivos de configuración proporcionados por los módulos sean los mismos que los de la configuración activa y, si no, actualice la configuración activa? ¿Cómo se manejan las actualizaciones del módulo? En D7 hook_update_N
se usaría para agregar campos usando PHP, pero parece que esto debería ser manejado por el CM en D8.
Cosas que he probado después de actualizar los archivos yml en el módulo:
drush cr
, sincronización de configuración.copiando manualmente todos los archivos de configuración actualizados
sites/default/files/config_XXX/staging/
, pero esto genera este error "La configuración por etapas no se puede importar, porque se origina en un sitio diferente a este sitio. Solo puede sincronizar la configuración entre instancias clonadas de este sitio". .Importar manualmente los archivos uno por uno utilizando el administrador de configuración. Esto funciona, pero obviamente debe haber una forma más automática.
[EDITAR] use manualmente el módulo config_update para inspeccionar los cambios y 'revertir' a la configuración del módulo. De nuevo, esto es manual.
EDITAR: desde la configuración de gestión - qué hacer y qué no hacer
NO HACER
Intente cambiar la configuración activa en su sitio cambiando los archivos en el directorio config / install de un módulo. Esto NO funcionará porque Drupal solo leerá desde ese directorio cuando el módulo esté instalado.
... pero los cambios van a suceder, a menos que los módulos estén vinculados a cualquier configuración que necesiten en su primer lanzamiento, y nunca puedan actualizar o agregar configuraciones.
Gracias por adelantado.
hook_update_N
, pero no estoy seguro de qué
hook_update_N
. Excelente artículo sobre Drupal 8 para sitios pequeños (y parte 2 ). En D8 "los sitios poseen su configuración, no los módulos" .