diff --git a/core/lib/Drupal/Core/Entity/Plugin/Validation/Constraint/ValidReferenceConstraintValidator.php b/core/lib/Drupal/Core/Entity/Plugin/Validation/Constraint/ValidReferenceConstraintValidator.php index aef9fb0018..facf2a6c36 100644 --- a/core/lib/Drupal/Core/Entity/Plugin/Validation/Constraint/ValidReferenceConstraintValidator.php +++ b/core/lib/Drupal/Core/Entity/Plugin/Validation/Constraint/ValidReferenceConstraintValidator.php @@ -125,7 +125,8 @@ public function validate($value, Constraint $constraint) { $previously_referenced_ids = []; if ($value->getParent() && ($entity = $value->getEntity()) && !$entity->isNew()) { $existing_entity = $this->entityTypeManager->getStorage($entity->getEntityTypeId())->loadUnchanged($entity->id()); - foreach ($existing_entity->{$value->getFieldDefinition()->getName()}->getValue() as $item) { + $field_name = $value->getFieldDefinition()->getName(); + foreach ($existing_entity->get($field_name)->getValue() as $item) { $previously_referenced_ids[$item['target_id']] = $item['target_id']; } }