Я создаю сущность basketElement , которая связана с родительской сущностью basket через администратор экземпляра Sonata \ Form \ Type \ CollectionType.При создании сущности basketElement Мне также нужно вызвать функцию службы, которой требуется идентификатор сущности basket .
. Сейчас у меня есть администратор:
class BasketAdmin extends AbstractAdmin {
/**
* @param \Sonata\AdminBundle\Form\FormMapper $formMapper
*/
public function configureFormFields(FormMapper $formMapper): void
{
$formMapper->with('basket.group.basketElements')
->add('basketElements', Sonata\Form\Type\CollectionType::class)
;
}
}
Администратор поля basketElements выглядит следующим образом:
class BasketElementAdmin extends AbstractAdmin {
/**
* @param \Sonata\AdminBundle\Form\FormMapper $formMapper
*/
public function configureFormFields(FormMapper $formMapper): void
{
$formMapper->with('basketElement.group.products')
->add('basket', Sonata\AdminBundle\Form\Type\ModelHiddenType::class)
;
}
public function prePersist(){
$this->myService->myFunction($this->getParent()->getSubject()->getId());
}
}
Как получить доступ к родительскому объекту?