Forms Symfony2 FormType实体将值设置为特定属性
我正在生成一个表单,并使用entity FormType将一个实体映射到一个select字段 我可以设置“选择”以显示我喜欢的任何属性:Forms Symfony2 FormType实体将值设置为特定属性,forms,symfony,types,Forms,Symfony,Types,我正在生成一个表单,并使用entity FormType将一个实体映射到一个select字段 我可以设置“选择”以显示我喜欢的任何属性: 'property'=>'myProperty'(在symfony 2.7 its中)'choice\u label'=>'myProperty' 我使用的是Symfony 2.6,因此'choice\u value'选项不可用 我没有找到一种方法来指定使用哪个属性作为select的实际值,它似乎默认为id字段,这不是我想要的 $myData = $this-
'property'=>'myProperty'
(在symfony 2.7 its中)'choice\u label'=>'myProperty'
我使用的是Symfony 2.6,因此'choice\u value'
选项不可用
我没有找到一种方法来指定使用哪个属性作为select的实际值,它似乎默认为id字段,这不是我想要的
$myData = $this->fpem->getRepository('GameBundle:ContestTimeKey')->getCurrentKeysQuery($currentTimeframe);
$builder
->add('contestTimeKey', 'entity', array(
'class' => 'GameBundle:ContestTimeKey',
'property' => 'dateString',
'query_builder' => $myData,
'label' => 'Select Date',
'placeholder' => 'Pick a Date',
))
->add('userID', 'hidden')
->getForm();
}
$myData
是从存储库返回的一个查询,它获取我要填充select的实体。您可以尝试使用另一个属性-choice\u值
。一个回调函数,它接收实体项作为参数,并从中返回$entity->yourProperty()代码>例如。看一看,您可以使用数据转换器()或者只需将Data
属性设置为所需的值并解决问题?也就是说,array('data'=>5)
将从您的entryFee
选项中选择.5
(如果它是一个实体,同样适用,您可以将所需的实体作为数据
而不是5
传递)@官方文档设置数据
非常不方便,应该避免动态列表中的回复,因为它是表单时间键的第一项。数据是从CompetingTimeKeyRepository返回的,我有3个属性ID、Date和DateString。我希望dateString显示在select(它是)上,并将值设置为date属性。您可以尝试使用另一个属性-choice\u value
。一个回调函数,它接收实体项作为参数,并从中返回$entity->yourProperty()代码>例如。看一看,您可以使用数据转换器()或者只需将Data
属性设置为所需的值并解决问题?也就是说,array('data'=>5)
将从您的entryFee
选项中选择.5
(如果它是一个实体,同样适用,您可以将所需的实体作为数据
而不是5
传递)@官方文档设置数据
非常不方便,应该避免动态列表中的回复,因为它是表单时间键的第一项。数据是从CompetingTimeKeyRepository返回的,我有3个属性ID、Date和DateString。我希望dateString显示在select(它是)上,并将值设置为date属性。