Skip to main content

Entity/field definitions Mismatched entity and/or field definitions

Full error massage:

Entity/field definitions
Mismatched entity and/or field definitions
The following changes were detected in the entity type and field definitions.
Custom menu link
The Custom menu link entity type needs to be updated.


How to fix:-

diff --git a/translatable_menu_link_uri.install b/translatable_menu_link_uri.install
new file mode 100644
index 0000000..d709169
--- /dev/null
+++ b/translatable_menu_link_uri.install
@@ -0,0 +1,26 @@
+<?php
+
+/**
+ * @file
+ * Install, uninstall and update hooks for translatable_menu_link_uri.
+ */
+
+/**
+ * Update field link_override storage definition for existing fields.
+ */
+function translatable_menu_link_uri_update_9001(&$sandbox) {
+  try {
+    $definition_update_manager = \Drupal::entityDefinitionUpdateManager();
+    $last_installed_schema_repository = \Drupal::service('entity.last_installed_schema.repository');
+    $entity_type = $definition_update_manager
+      ->getEntityType('menu_link_content');
+    $field_storage_definitions = $last_installed_schema_repository
+      ->getLastInstalledFieldStorageDefinitions('menu_link_content');
+    $field_storage_definitions['link_override']->setRevisionable(TRUE);
+    $definition_update_manager
+      ->updateFieldableEntityType($entity_type, $field_storage_definitions, $sandbox);
+  }
+  catch (Throwable $e) {
+    watchdog_exception('translatable_menu_link_uri', $e);
+  }
+}
Google AdSense
client = ca-pub-2898279488603899
slot = 9058461004
format = auto