加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – Symfony2将值传递给集合表单类型

发布时间:2020-12-13 16:33:59 所属栏目:PHP教程 来源:网络整理
导读:我有以下实体关系: 客户具有一对多地址 地址有多对一的县和多对一的城市 一个县有一对多的城市. 所以,在我的CustomerType中,我有 public function buildForm(FormBuilderInterface $builder,array $options){ $builder ... -add('addresss','collection',ar
我有以下实体关系:

>客户具有一对多地址
>地址有多对一的县和多对一的城市
>一个县有一对多的城市.

所以,在我的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中,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?那么每个地址都有相应的县来查找城市?

任何帮助,将不胜感激.谢谢!

使用AddressType中的构造函数,它适用于我..

客户类型:

public function buildForm(FormBuilderInterface $builder,'type' => new AddressType($your_variable),))
    ;
}

地址类型:

private $your_variable;

public function __construct($variable)
{
    $this->your_variable= $variable;
}
...
public function buildForm(FormBuilderInterface $builder,array $options){
    $your_variable = $this->your_variable;
    'query_builder' => function(CityRepository $cr) use ($your_variable) {
        return $cr->getCityQB($your_variable);
    },}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读