我有以下实体关系:
- 客户有一对多地址
- 一个地址具有多对一的县和多对一的城市
- 一个县有一对多的市。
所以,在我的 CustomerType 中,我有
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
...
->add('addresss', 'collection', array(
'label' => 'customer.address',
'type' => new AddressType(),
'allow_add' => true,
'allow_delete' => true,
'by_reference' => false,
))
;
}
在我的 AddressType 中,我有
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
...
->add('city', 'entity', array(
'class' => 'MyCustomerBundle:City',
'query_builder' => function(CityRepository $cr) use ($options) {
return $cr->getCityQB($options['county']);
},
'property' => 'city',
'empty_value' => '',
))
;
}
我的目标是只显示相应县的城市集。我可以将值从 $options 获取到 CustomerType,但是如何将值传递给 AddressType?这样每个地址都有对应的县来查找城市吗?
任何帮助,将不胜感激。谢谢!