我有2個實體。 公司和商店。Symfony 3 - Sonata Admin Bundle - configureFormFields在從其他實體添加時禁用字段
當我添加一家公司時,我也可以添加一家商店。 我的問題是,當將這添加到公司實體上時,我不想在表單上看到「公司」字段。
'公司'字段只應顯示在我直接在'商店添加'上添加商店時顯示。
是否有可能在公司實體上添加存儲時刪除或禁用此字段?
非常感謝。
UPDATE
這是我ClientAdmin.php
protected function configureFormFields(FormMapper $formMapper)
{
$formMapper
->add('name', null, array(
'label' => 'Name'
))
->add('email', 'email', array(
'label' => 'E-Mail'
))
->add('street', null, array(
'label' => 'Straße'
))
->add('streetno', null, array(
'label' => 'Haus Nr.'
))
->add('city', null, array(
'label' => 'Ort'
))
->add('zip', null, array(
'label' => 'PLZ'
))
->add('stores', 'sonata_type_model', array(
'multiple' => true,
'by_reference' => false,
'class' => 'StoreBundle\Entity\Store',
'label' => 'Filialen',
))
;
}
這是我StoreAdmin.php
protected function configureFormFields(FormMapper $formMapper)
{
$formMapper
->add('name', null, array(
'label' => 'Name',
))
->add('number', null, array(
'label' => 'Nummer',
))
->add('street', null, array(
'label' => 'Straße',
))
->add('streetno', null, array(
'label' => 'Haus Nr.',
))
->add('zip', null, array(
'label' => 'PLZ',
))
->add('city', null, array(
'label' => 'Stadt',
))
->add('email', null, array(
'label' => 'E-Mail',
'required' => false,
))
->add('client', 'sonata_type_model', array(
'required' => false,
'multiple' => false,
'by_reference' => false,
'class' => 'ifabrik\ClientBundle\Entity\Client',
'label' => 'Unternehmen',
))
->add('editor', 'sonata_type_model', array(
'required' => false,
'multiple' => false,
'by_reference' => false,
'class' => 'UserBundle\Entity\User',
'label' => 'Bearbeiter',
))
;
}
你可以分享你2個實體configureFormField請 – pbenard
@pbenard做:) – cRsakaWolf