SonataAdmin - sonata_type_choice_field_mask [英] SonataAdmin - sonata_type_choice_field_mask

查看:22
本文介绍了SonataAdmin - sonata_type_choice_field_mask的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

    ->add('billManagement', 'sonata_type_choice_field_mask', array(
    'choices' => array(
        'FI' => 'FI',
        'GI' => 'GI'
    ),
    'map' => array(
        'FI' => array('company'),
        'GI' => array('company')
    ),
    'empty_value' => 'Mode de financement',
    'required' => true
))
->add('company')
->end()

我在这里显示了一个列表框,其中包含诸如GI"之类的选项.或FI".根据选择,将显示另一个框列表.一箱公司名单.但总是根据选择,要过滤的公司名单.我希望看到一家公司的查询字段根据 billManagement、FI"和FI"的选择而变化.或GI".

I show here a list box with choices such as "GI" or "FI". Depending on the choice, another box list is displayed. A box Companies list. But always depending on the choice, the list of companies to be filtered. I would like to see a company whose query field changes depending on the choice of billManagement, "FI" or "GI".

我试过了,但是不行

    ->add('billManagement', 'sonata_type_choice_field_mask', array(
    'choices' => array(
        'FI' => 'FI',
        'GI' => 'GI'
    ),
    'map' => array(
        'FI' => $formMapper->add('company', 'sonata_type_model', array(
            'class' => 'AppBundle\Entity\User\Company',
            'query' => $companyFinance
        )),
        'GI' => $formMapper->add('company', 'sonata_type_model', array(
            'class' => 'AppBundle\Entity\User\Company',
            'query' => $company
        )),
    ),
    'empty_value' => 'Mode de financement',
    'required' => true
))
->end()

推荐答案

我已经实现了我想做的事.我只是添加了两个未映射的字段

I have achieved what I wanted to do. I just add two fields not mapped

    ->add('billManagement', 'sonata_type_choice_field_mask', array(
    'choices' => array(
        'FI' => 'FI',
        'GI' => 'GI'
    ),
    'map' => array(
        'FI' => array('companyFinance'),
        'GI' => array('company'),
),
    'empty_value' => 'Mode de financement',
    'required' => true
))
->add('companyFinance', 'sonata_type_model', array(
    'class' => 'AppBundle\Entity\User\Company',
    'query' => $companyFinance,
    'mapped' => false
))
->add('company', 'sonata_type_model', array(
    'class' => 'AppBundle\Entity\User\Company',
    'query' => $company,
    'mapped' => false
))

这篇关于SonataAdmin - sonata_type_choice_field_mask的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆