diff --git a/src/Admin/FieldDescription.php b/src/Admin/FieldDescription.php index 3ffb7ba33..bacd22bca 100644 --- a/src/Admin/FieldDescription.php +++ b/src/Admin/FieldDescription.php @@ -35,11 +35,28 @@ public function setAssociationMapping($associationMapping) $this->fieldName = $associationMapping['fieldName']; } + /** + * NEXT_MAJOR: Remove this method. + */ public function getTargetEntity() + { + @trigger_error(sprintf( + 'Method %s() is deprecated since sonata-project/doctrine-orm-admin-bundle 3.x and will be removed in version 4.0.' + .' Use %s::getTargetModel() instead.', + __METHOD__, + __CLASS__ + ), E_USER_DEPRECATED); + + return $this->getTargetModel(); + } + + public function getTargetModel(): ?string { if ($this->associationMapping) { return $this->associationMapping['targetEntity']; } + + return null; } public function setFieldMapping($fieldMapping) diff --git a/src/Builder/DatagridBuilder.php b/src/Builder/DatagridBuilder.php index 7d6217636..9cce9028a 100644 --- a/src/Builder/DatagridBuilder.php +++ b/src/Builder/DatagridBuilder.php @@ -158,7 +158,7 @@ public function addFilter(DatagridInterface $datagrid, $type, FieldDescriptionIn if (ModelAutocompleteFilter::class === $type) { $fieldDescription->mergeOption('field_options', [ - 'class' => $fieldDescription->getTargetEntity(), + 'class' => $fieldDescription->getTargetModel(), 'model_manager' => $fieldDescription->getAdmin()->getModelManager(), 'admin_code' => $admin->getCode(), 'context' => 'filter', diff --git a/src/Builder/FormContractor.php b/src/Builder/FormContractor.php index 3658f2ef9..7fe9c6243 100644 --- a/src/Builder/FormContractor.php +++ b/src/Builder/FormContractor.php @@ -114,7 +114,7 @@ public function getDefaultOptions($type, FieldDescriptionInterface $fieldDescrip )); } - $options['class'] = $fieldDescription->getTargetEntity(); + $options['class'] = $fieldDescription->getTargetModel(); $options['model_manager'] = $fieldDescription->getAdmin()->getModelManager(); if ($this->checkFormClass($type, [ModelAutocompleteType::class])) { @@ -123,7 +123,7 @@ public function getDefaultOptions($type, FieldDescriptionInterface $fieldDescrip 'The current field `%s` is not linked to an admin.' .' Please create one for the target entity: `%s`', $fieldDescription->getName(), - $fieldDescription->getTargetEntity() + $fieldDescription->getTargetModel() )); } } @@ -133,7 +133,7 @@ public function getDefaultOptions($type, FieldDescriptionInterface $fieldDescrip 'The current field `%s` is not linked to an admin.' .' Please create one for the target entity : `%s`', $fieldDescription->getName(), - $fieldDescription->getTargetEntity() + $fieldDescription->getTargetModel() )); } @@ -165,7 +165,7 @@ public function getDefaultOptions($type, FieldDescriptionInterface $fieldDescrip 'The current field `%s` is not linked to an admin.' .' Please create one for the target entity : `%s`', $fieldDescription->getName(), - $fieldDescription->getTargetEntity() + $fieldDescription->getTargetModel() )); } diff --git a/tests/Admin/FieldDescriptionTest.php b/tests/Admin/FieldDescriptionTest.php index 6ff47eea5..079a0e87a 100644 --- a/tests/Admin/FieldDescriptionTest.php +++ b/tests/Admin/FieldDescriptionTest.php @@ -303,11 +303,11 @@ public function testGetTargetEntity(): void $field = new FieldDescription(); - $this->assertNull($field->getTargetEntity()); + $this->assertNull($field->getTargetModel()); $field->setAssociationMapping($assocationMapping); - $this->assertSame('someValue', $field->getTargetEntity()); + $this->assertSame('someValue', $field->getTargetModel()); } public function testIsIdentifierFromFieldMapping(): void diff --git a/tests/Builder/FormContractorTest.php b/tests/Builder/FormContractorTest.php index e7f3d566a..892b65516 100644 --- a/tests/Builder/FormContractorTest.php +++ b/tests/Builder/FormContractorTest.php @@ -76,7 +76,7 @@ public function testDefaultOptionsForSonataFormTypes(): void $fieldDescription = $this->createMock(FieldDescriptionInterface::class); $fieldDescription->method('getAdmin')->willReturn($admin); - $fieldDescription->method('getTargetEntity')->willReturn($modelClass); + $fieldDescription->method('getTargetModel')->willReturn($modelClass); $fieldDescription->method('getAssociationAdmin')->willReturn($admin); $admin->method('getNewInstance')->willReturn($model);