Symfony 和 Sonata 获得 Class 和 "pcode"

Symfony and Sonata get Class with "pcode"

我在获取 'Add New' 和模态 Window 调用的 Class 时遇到问题。

情况是,我的条目上有一个 'Add New' 按钮 sonata_type_model:

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

当我点击 'Add New' 时,它会显示一个模式 Window,我可以用它创建新的 RFID。

但是我的 RFID class 有一个 条形码 对象,必须用 class 的数据填充 'Add New' 按钮!

我可以用

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

但我希望能够获得响应 'pcode' 的 Entity Manager 在我的例子中 $this->getRequest()->get('pcode') returns:

admin_product_accessory_audio_audio.admin.audio

并且 $this->getConfigurationPool()->getContainer()->get('doctrine')->getRepository($this-> 无法读取它getRequest()->get('pcode'))

这让我发疯!! :D

提前致谢

使用

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

有道理吗?