2014-11-06 2 views
0

서로 관련이없는 두 개의 별개 객체가있는 양식을 작성하고 싶습니다.symfony2 2 개의 고유 한 객체가있는 양식

가능합니까? 같은 페이지에 2 개의 폼을 작성해야하나요? 자바 스크립트 제출 버튼을 클릭하면 자바 스크립트가 모두 함께 합쳐집니다. 또는 Symfony를 사용하여 하나의 양식으로 관리하는 것이 가능합니다. 그렇다면 진행 방법에 대한 조언이 있습니까?

+2

두 번째 형식을 첫 번째 형식으로 포함 시키십시오. http://symfony.com/doc/current/book/forms.html#embedded-forms – dmnptr

답변

2

이 솔루션이 가장 적합한 것인지 확실하지 않지만 비슷한 문제가있는 프로젝트에서 작동합니다.

각 엔터티에 대해 FormType을 만들고 data_classsetDefaultOptions 방법으로 올바르게 정의해야합니다. 이 예제에서는 EventType과 UserType입니다.

이 작업을 수행하려면 두 엔티티를 모두 나타내는 create class가 필요합니다. 나는 그 때 형태 모형을 부른다.

// Acme\DemoBundle\Form\Model\Custom.php 

class Custom 
{ 
    public $event; 
    public $user; 
} 

이제이 엔티티를 하나의 양식으로 결합하는 마지막 FormType을 만듭니다.

// Acme\DemoBundle\Form\CustomType.php 

class CustomType extends AbstractType 
{ 
    public function buildForm(FormBuilderInterface $builder, array $options) 
    { 
     $builder->add('Event', new EventType()); 
     $builder->add('User', new UserType()); 
    } 

    public function setDefaultOptions(OptionsResolverInterface $resolver) 
    { 
     $resolver->setDefaults(array(
      'data_class' => 'Acme\DemoBundle\Form\Model\Custom' 
     )); 
    } 

    ... 
} 
관련 문제