2013-06-08 3 views
0

У меня есть сущность. Категория, в которой есть категория, такая как дерево. У меня есть CategorySelectorType, который имеет несколько не отображаемых полей, которые определяют, какая категория должна быть задана для данных формы.Установка значения свойства в пользовательской форме типа

Я хочу, чтобы включить этот тип CategorySelectorType в любой объект и обновить сопоставленное свойство в сущности, на которой используется тип CategorySelectorType.

Представьте

ArticleType.php

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

Так при связывании, свойство категории должны быть обновлены с тем, что Categpru был выбран с помощью CategorySelectorType.

Я попытался сделать это в Lister событие 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')); 
Смежные вопросы