it-swarm.com.de

Konfigurationsimportfehler: Diese Entitäten müssen vor dem Import gelöscht werden

Ich habe zwei Drupal-Umgebungen mit demselben system.site:uuid

Im Haupt Drupal Ich exportiere die Konfiguration mit Befehl:

drush config-export deploy -y

Im Ziel drupal Ich importiere die Konfiguration mit folgendem Befehl:

drush config-import deploy -y

Aber ich habe diesen Fehler

Entitäten existieren vom Typ Verknüpfungslink und Standard. Diese Entitäten müssen vor dem Import gelöscht werden.

Und:

Das mytest-Theme kann nicht installiert werden, da es nicht vorhanden ist.

Mein Test war ein Test zum Erstellen eines Unterthemas, aber dann lösche ich mein Testformular drupal. Und ich weiß nicht, was es jetzt exportiert, und Platzhalter, ich weiß nicht, was es ist

Ich folgte diesem Artikel Und ich habe das gleiche Problem von diesem Kommentar

7
monkeyUser

Klingt so, als hätten Sie Ihr Testthema gelöscht, ohne es zu deinstallieren. Sie müssen es entweder ordnungsgemäß deinstallieren, was möglicherweise nicht möglich ist, wenn es nicht vorhanden ist, oder die Datei core.extension.yml in Ihrer exportierten Konfiguration bearbeiten und manuell entfernen.

In Bezug auf den anderen Fehler sieht es so aus, als würden Sie entweder Verknüpfungs-/Menüverknüpfungstypen wirklich löschen oder, wahrscheinlicher, die UUID system.site manuell "reparieren". Diese Prüfung und UUID gibt es aus einem bestimmten Grund. Wenn Sie sie in zwei verschiedenen Installationen auf den gleichen Wert ändern, werden viele unerwartete Dinge ausgeführt. Sie müssten auch viele andere UUIDs aktualisieren, andernfalls Drupal löscht so gut wie jede einzelne Konfigurationsentität in Ihrem System und erstellt sie neu. Aufgrund der geänderten UUID wird davon ausgegangen, dass Sie gelöscht und neu erstellt wurden -erstellt es, also ist es das, was es versucht zu tun.

Und da es Sie daran hindert, Entitätstypen der Bundle-Konfiguration zu löschen, wenn noch Inhalt für diesen Typ/dieses Bundle vorhanden ist, wird Ihnen dieser Fehler angezeigt.

Was versuchen Sie genau zu tun? Vielleicht suchen Sie stattdessen Config Installer ?

3
Berdir

Zum:

Entitäten existieren vom Typ Verknüpfungslink und Standard. Diese Entitäten müssen vor dem Import gelöscht werden.

Sie müssen die Entitäten vom Typ short-cut Löschen, Sie können mit drush tun:

drush ev '\Drupal::entityManager()->getStorage("shortcut_set")->load("default")->delete();'
7
Edys Meza

Informationen zum ersten Fehler (Entitäten vom Typ Verknüpfungslink und Standard. Diese Entitäten müssen vor dem Import gelöscht werden.):

Ich ging zu Start> Administration> Konfiguration> Benutzeroberfläche> Verknüpfungen (admin/config/Benutzeroberfläche/Verknüpfung), als ich unter "Listenlinks" von "Standard" jede Verknüpfung löschte.

Der Fehler ist jetzt weg.

4
dxvargas

Immer wenn Sie diese Art von Fehler erhalten, müssen Sie zuerst die Entitäten löschen.

Hier ist ein generischer Drush-Befehl, der im Gegensatz zu einer anderen Antwort hier jeden Entitätstyp löscht. Legen Sie einfach den Computernamen im ersten Befehl PHP) fest.

drush @site eval '$entity_type = "my_entity_type"; $storage_handler = \Drupal::entityTypeManager()->getStorage($entity_type); $storage_handler->delete($storage_handler->loadMultiple(\Drupal::entityQuery($entity_type)->execute()));'

0
colan