Symfony2 entity field type alternatives to "property" or "__toString()"? Symfony2 entity field type alternatives to "property" or "__toString()"? symfony symfony

Symfony2 entity field type alternatives to "property" or "__toString()"?


I found this really helpful, and I wound a really easy way to do this with your code so here is the solution

$builder->add('customers', 'entity', array('multiple' => true,'class'    => 'AcmeHelloBundle:Customer','property' => 'label',));

And in the class Customer (the Entity)

public function getLabel(){    return $this->lastname .', '. $this->firstname .' ('. $this->email .')';}

eh voila :D the property get its String from the Entity not the Database.


Passing a closure does not work yet, but will be added to Symfony soon: https://github.com/symfony/symfony/issues/4067


It seems this can be achievable by adding following block after elseif ($this->labelPath) block in ObjectChoiceList.php.

elseif (is_callable($this->labelPath)) {  $labels[$i] = call_user_func($this->labelPath, $choice);}

Haven't tried it though :).