En Drupal 8.1 sigo ejecutándome en ese tipo de mensajes cuando trato de activar un módulo personalizado o una función personalizada que realiza algunas modificaciones en la página básica. (agregar campos).
Es realmente molesto ...
Pasos:
- Borrar la base de datos por completo
- ve a /install.php y elige Perfil estándar
- Ahora que el sitio se está ejecutando, vaya a Extender
- Seleccionar función: página básica
Resultado:
Unable to install Feature - Basic Page, core.base_field_override.node.page.promote, core.entity_form_display.node.page.default, core.entity_view_display.node.page.default, core.entity_view_display.node.page.teaser, field.field.node.page.body, node.type.page already exist in active configuration.
Bueno, sí ... eso es lo que quiero hacer: ¡cambiar esa configuración predeterminada!
Expexted:
Poder instalar mi función que hace algunas modificaciones a la página básica.
Mi característica
Aquí está mi característica crear con el módulo de características
Básicamente agrega dos campos, banner_image y background_image a la página básica
Archivos:
config
install
core.base_field_override.node.page.changed.yml
core.base_field_override.node.page.created.yml
core.base_field_override.node.page.promote.yml
core.base_field_override.node.page.status.yml
core.base_field_override.node.page.sticky.yml
core.base_field_override.node.page.title.yml
core.base_field_override.node.page.uid.yml
core.entity_form_display.node.page.default.yml
core.entity_view_display.node.page.default.yml
core.entity_view_display.node.page.teaser.yml
field.field.node.page.body.yml
field.field.node.page.field_banner_image.yml
field.field.node.page.field_image.yml
field.storage.node.field_banner_image.yml
language.content_settings.node.page.yml
node.type.page.yml
feature_basic_page.features.yml
feature_basic_page.info.yml
¿Por qué esta cosa simple no es compatible? ¿Es un error? ¿Qué debo hacer para poder usar mi función?
Respuestas:
Con drush probablemente puedas hacer
para eliminar las configuraciones que se quejan
fuente
optional/
carpeta para que se calle. Pero no estoy seguro de todas las implicaciones ...Warning: in_array() expects parameter 2 to be array, null given in lightning_layout_block_alter() (line 91 of modules/contrib/lightning_layout/lightning_layout.module).
después de configurar el código de mi sitio, la fuente y la base de datos de git en otra máquina .drush pm-uninstall lightning_layout
funcionó pero luego, cuando traté de reinstalarlo,drush en lightning_layout
recibí este error de línea de comando "En PreExistingConfigException.php línea 65: los objetos de configuración (field.storage.node.panelizer) proporcionados por lightning_layout ya existen en la configuración activa" Así que usé su solución así:drush config-delete field.storage.node.panelizer
y fue capaz de volver a habilitar el módulo:drush en lightning_layout
Esto no es compatible porque un módulo puede no reemplazar una entidad de configuración que ya existe con la configuración de instalación.
Para agregar configuraciones de modo y vista para un tipo de nodo ya existente, debe implementar esto en código en hook_install ().
O primero debe eliminar el tipo de nodo en su sitio, pero luego también debe eliminar el contenido.
Y no, esto no es un error, así es como se define para evitar la pérdida de configuración.
fuente
Módulo encontrado, use el módulo Easy Install para purgar la configuración activa sin usar devel o drush . Funciona incluso si se ha perdido la carpeta opcional y la opción forzada en los archivos de configuración de su módulo ( yml )
fuente
Tengo el mismo problema para el sitio del panteón. Entré comando drush
Es trabajo para mí.
fuente
¡Con
drush en
eso funciona!EDITAR: ahora hay una solución mucho mejor, vea: ¿Cómo elimino un objeto de configuración de la configuración activa?
fuente
Si desea agregar configuraciones a su módulo personalizado pero ya existen en la configuración activa, y por alguna razón no puede usar drush para eliminar esas configuraciones (en mi caso porque es parte de un perfil de instalación), y está seguro no habrá ningún problema con que sobrescriba la configuración, aquí hay un enfoque para reemplazar esas configuraciones.
Agregue una nueva carpeta en su módulo personalizado, / config / hook_install y agregue sus archivos de configuración .yml en esa carpeta, luego en la instalación de gancho de su módulo.
fuente