diff --git a/core/modules/views/src/EntityViewsData.php b/core/modules/views/src/EntityViewsData.php
index 47d44e8..959ff17 100644
--- a/core/modules/views/src/EntityViewsData.php
+++ b/core/modules/views/src/EntityViewsData.php
@@ -127,7 +127,6 @@ public function getViewsData() {
     $revision_field = $this->entityType->getKey('revision');
 
     // Setup base information of the views data.
-    $data[$base_table]['table']['entity type'] = $this->entityType->id();
     $data[$base_table]['table']['group'] = $this->entityType->getLabel();
     $data[$base_table]['table']['base'] = [
       'field' => $base_field,
@@ -201,6 +200,12 @@ public function getViewsData() {
       }
     }
 
+    // Add the entity type key to each table generated.
+    $entity_type_id = $this->entityType->id();
+    array_walk($data, function(&$table_data) use ($entity_type_id){
+      $table_data['table']['entity type'] = $entity_type_id;
+    });
+
     return $data;
   }
 
diff --git a/core/modules/views/src/ViewExecutable.php b/core/modules/views/src/ViewExecutable.php
index 94fbcc0..0874b56 100644
--- a/core/modules/views/src/ViewExecutable.php
+++ b/core/modules/views/src/ViewExecutable.php
@@ -1880,6 +1880,7 @@ public function addHandler($display_id, $type, $table, $field, $options = array(
     $types = $this::getHandlerTypes();
     $this->setDisplay($display_id);
 
+    $data = Views::viewsData()->get($table);
     $fields = $this->displayHandlers->get($display_id)->getOption($types[$type]['plural']);
 
     if (empty($id)) {
@@ -1895,8 +1896,11 @@ public function addHandler($display_id, $type, $table, $field, $options = array(
       'field' => $field,
     ) + $options;
 
+    if (isset($data['table']['entity type'])) {
+      $fields[$id]['entity_type'] = $data['table']['entity type'];
+    }
+
     // Load the plugin ID if available.
-    $data = Views::viewsData()->get($table);
     if (isset($data[$field][$handler_type]['id'])) {
       $fields[$id]['plugin_id'] = $data[$field][$handler_type]['id'];
       if ($definition = Views::pluginManager($handler_type)->getDefinition($fields[$id]['plugin_id'], FALSE)) {
