2013-06-08 3 views
0

트리와 같은 범주 자식이있는 엔터티 범주가 있습니다. 은 폼 데이터로 설정해야하는 범주를 결정하는 맵핑되지 않은 필드가 몇 개있는 CategorySelectorType이 있습니다.사용자 지정 양식 형식의 속성 값 설정

해당 엔터티에 해당 CategorySelectorType을 포함시키고 CategorySelectorType이 사용되는 엔터티에 매핑 된 속성을 업데이트 할 수 있기를 원합니다.

그래서 ArticleType.php

$builder->add('title') ; 
$builder->add('category','category_selectory') ; 

를 바인딩 할 때, 카테고리 속성 Categpru가 CategorySelectorType를 사용하여 선택되었다 무엇으로 업데이트해야합니다

상상해보십시오. 내가 이벤트 리스터 durint의 POST_BIND에 그 일을 시도하지만

Warning: ReflectionProperty::getValue() expects parameter 1 to be object, null given in /home/neron/sites/zabulu/trunk/vendor/doctrine/orm/lib/Doctrine/ORM/Mapping/ClassMetadataInfo.php line 697 

를 얻을 그리고

UniqueEntityValidator ->validate (object(Category), object(UniqueEntity)) 
+0

'category_selectory '는 질문에 오타가 있거나 코드에 오타가 있습니까? –

+0

예, category_selector는 서비스로서의 CategorySelectorType 일뿐입니다. – d0001

답변

1

에 의한 것으로 보인다

난의를 할 경우 내가 질문을 이해하고 생각 이렇게하려면 올바른 방법은 다음과 같습니다.

$builder->add('category', new CategorySelectorType(), array('empty_value' => 'Choose a category'));