大家好,
->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"或" 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()
提前谢谢
于连
ps:对不起我的英语!
答案 0 :(得分:1)
我已经实现了我想做的事情。 我只添加两个未映射的字段
->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
))