我试图创建一个实体的选择字段列表,每个选择都有多个显示值。
我尝试使用实体类型,但只显示了toString值。但我想显示名称,描述,价格和图像。
public function buildForm(FormBuilderInterface $builder, array $options) {
$builder->add('entityFields', 'entity' , array(
'class' => 'Organisation\\MyBundle\\Entity\\MyEntity',
'expanded' => true,
'multiple' => true,
'required' => true,
'label' => 'myLabel',
'query_builder' => function (Repository $repository) {
return $repository->createQueryBuilder('e')
->where('e.isActive = true');
},
));
}
有人是理想人吗?是否可以仅使用表单系统解决此问题?我正在使用Symfony 2.3。谢谢你的帮助
答案 0 :(得分:1)
添加property
选项
例如:
public function buildForm(FormBuilderInterface $builder, array $options) {
$builder->add('entityFields', 'entity' , array(
'class' => 'Organisation\\MyBundle\\Entity\\MyEntity',
'expanded' => true,
'multiple' => true,
'required' => true,
'label' => 'myLabel',
'query_builder' => function (Repository $repository) {
return $repository->createQueryBuilder('e')
->where('e.isActive = true');
},
'property' => 'customName'
));
}
并在实体中:
public function getCustomName() {
return $this->name.' '.$this->otherColumn; // etc
}