엔티티 관리자를 사용할 수있는 심포니 양식 유형을 만들었습니다. http://symfony.com/doc/current/form/form_dependencies.html#define-your-form-as-a-service확장 된 양식 유형을 상위 인수를 전달하는 서비스로 다시 선언하지 마십시오.
가 지금은 첫 번째 연장 또 다른 형태의 유형을 만들려면 : 심포니 문서에 언급 된
그래서 나는 서비스로 선언했다. 하지만 이미 서비스로 선언 된 첫 번째 양식에서 확장하는 경우에도이 새로운 양식 형식을 서비스로 선언해야하는 것처럼 보입니다.symfony가 새로운 폼이 첫 번째 폼 타입을 확장하고 자동으로 부모 클래스의 의존성을 주입하는 것을 감지 할 수 있습니까?
// src/AppBundle/Form/TaskType.php
use Doctrine\ORM\EntityManager;
class TaskType extends AbstractType
{
private $em;
public function __construct(EntityManager $em)
{
$this->em = $em;
}
public function buildForm(FormBuilderInterface $builder, array $options)
{
// ...
}
// ...
}
// src/AppBundle/Form/TaskObject1Type.php
use Doctrine\ORM\EntityManager;
class TaskObject1Type extends TaskType
{
public function buildForm(FormBuilderInterface $builder, array $options)
{
parent::buildForm($builder, $options);
// ...
}
// ...
}
짧은 대답은 아니오입니다. 양식 구성 요소는 양식 유형 클래스 이름을 사용하여 컨테이너에서 서비스를 가져옵니다. 나는 당신이 그 코드를 찾고 그것을 수정할 수 있는지 알아보기를 원하지만, 몇 줄의 서비스 정의를 추가하는 것을 피하기 위해 많은 일이 될 것이라고 생각한다. 상위 서비스 기능이 도움이 될 수 있습니다. http://symfony.com/doc/current/service_container/parent_services.html – Cerad