diff --git a/core/lib/Drupal/Core/Entity/EntityViewBuilder.php b/core/lib/Drupal/Core/Entity/EntityViewBuilder.php index 8bfb3a3..77f9db7 100644 --- a/core/lib/Drupal/Core/Entity/EntityViewBuilder.php +++ b/core/lib/Drupal/Core/Entity/EntityViewBuilder.php @@ -448,6 +448,12 @@ protected function getSingleFieldDisplay($entity, $field_name, $display_options) $bundle = $entity->bundle(); $key = $entity_type_id . ':' . $bundle . ':' . $field_name . ':' . hash('crc32b', serialize($display_options)); if (!isset($this->singleFieldDisplays[$key])) { + + $definitions = $this->entityManager->getBaseFieldDefinitions($entity_type_id); + if (isset($definitions[$field_name])) { + $display_options = \Drupal::service('plugin.manager.field.formatter')->prepareConfiguration($definitions[$field_name]->getType(), $display_options); + } + $this->singleFieldDisplays[$key] = EntityViewDisplay::create(array( 'targetEntityType' => $entity_type_id, 'bundle' => $bundle, diff --git a/core/lib/Drupal/Core/Field/FormatterPluginManager.php b/core/lib/Drupal/Core/Field/FormatterPluginManager.php index 27b56d8..42c9c03 100644 --- a/core/lib/Drupal/Core/Field/FormatterPluginManager.php +++ b/core/lib/Drupal/Core/Field/FormatterPluginManager.php @@ -59,7 +59,6 @@ public function createInstance($plugin_id, array $configuration = array()) { // @TODO, is this missing somewhere else? if (empty($configuration['label'])) { $configuration['label'] = ''; -// assert(FALSE, sprintf('The %s does not have a label', $plugin_id)); } // @todo This is copied from \Drupal\Core\Plugin\Factory\ContainerFactory.