Symfony和Sonata通过“pcode”获得Class

时间:2015-11-04 15:46:56

标签: php symfony sonata-admin

我遇到了“添加新”和“模态窗口”调用的类的问题。

情况是,我的条目中有一个'添加新'按钮,带有sonata_type_model:

->add('rfid', 'sonata_type_model', array(
                'class' => 'Admin\IdManageBundle\Entity\RFID',
                'property' => 'barcode'
            ))

当我点击“添加新”时,它会显示一个模态窗口,我可以用它创建新的RFID。

但是我的RFID课程有一个条形码对象,必须用“添加新”按钮填写课程数据!

我可以用

处理父类
->add('barcode', 'text', array(
                'data' => $this->getRequest()->get('pcode')
            ))

但我希望能够获得响应'pcode'的实体经理 在我的情况下 $ this-> getRequest() - > get('pcode')返回:

  

admin_product_accessory_audio_audio.admin.audio

并且 $ this-> getConfigurationPool() - > getContainer() - > get('doctrine') - > getRepository( $ this-> getRequest() - >获得( 'p码')

这让我疯了! :d

提前致谢

1 个答案:

答案 0 :(得分:1)

使用

$admin = $this->getConfigurationPool()->getAdminByAdminCode('admin_product_accessory_audio_audio.admin.audio');
$className = $admin->getClass();
$repo = $this->getConfigurationPool()->getContainer()->get('doctrine')->getRepository($class);

有意义吗?