Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/visual-studio-code/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Sonata管理,依亲子女字段_Php_Symfony_Sonata Admin - Fatal编程技术网

Php Sonata管理,依亲子女字段

Php Sonata管理,依亲子女字段,php,symfony,sonata-admin,Php,Symfony,Sonata Admin,我有三节课 OrderAdmin,ProductAdmin,orderahasequipmentadmin 订单需要将与该产品相关的产品和设备添加到中间表订单设备 我可以添加新产品,但当我尝试添加OrderHasEquipment时,它会显示我数据库中的所有设备,我只想显示该产品可用的设备并附加到该订单 关系是 订单->多通->产品 Order->oneToMany->OrderHasEquipment(因为我需要一个中间实体来处理sonata adminsonata\u type\u集合和so

我有三节课

OrderAdmin
ProductAdmin
orderahasequipmentadmin

订单
需要将与该产品相关的
产品
设备
添加到中间表
订单设备

我可以添加新产品,但当我尝试添加OrderHasEquipment时,它会显示我数据库中的所有设备,我只想显示该产品可用的设备并附加到该订单

关系是

订单->多通->产品

Order->oneToMany->OrderHasEquipment(因为我需要一个中间实体来处理sonata admin
sonata\u type\u集合
sonata\u type\u model\u列表

产品->众多->设备

因此,当创建/编辑
订单
时,它会显示一个带有
产品
的选择列表,我需要一个行为,即当选择
产品
时,
订单设备
(即
索纳塔类型集合
字段,其中包含
索纳塔类型模型列表
,因为中间实体),仅允许我添加与所选
产品相关的
设备
项目


有什么办法吗?

如果一切正常:

protected function configureDatagridFilters(DatagridMapper $datagridMapper)
    {
        $datagridMapper
            ->add('Equipment') //name from Entity
        ;
    }

您是否使用了->和('relationtable')?现在,我尝试使用子对象和父对象,但没有使用spected。用('relationship table')
这是怎么回事?你为OrderHasEquipment设置了所有正确的关系吗?是的,关系是正确的,表单工作得很好,我想要的是只显示所选产品的设备并将其分配给订单,这是我不知道如何实现的工作流。好吧,你说的是用('device')显示
->
以前,现在是
添加
,正如我所说,我可以使用
->add(
设备
正确地添加表单字段。我不能做的(因为不知道如何做)是只获取与
订单中的
产品
相关的字段元素。