【问题标题】:Symfony2 DQL Update query with Many to Many多对多的 Symfony2 DQL 更新查询
【发布时间】:2017-10-22 05:41:05
【问题描述】:

我有三个表“category”、“product”和“product_category”。 前两个表是从两个实体类别和产品创建的。 第三个表“product_category”由框架教义控制台命令自动生成。

现在我可以从下面的查询中获取(获取)产品关系数据(基于类别 ID),这很好。

$this->createQueryBuilder('p')
                ->leftJoin('p.category', 'c')
                ->select('p')
                ->where('c.id = :category_id')
                ->setParameter('category_id', 2)
                ->getQuery()->getSQL();

但是如何使用多对多关系来更新数据? 我尝试了几个查询,但它不起作用!!! ( 我想将所有产品状态更新为非活动 (2),其类别状态为 (2 = 非活动)。

【问题讨论】:

    标签: doctrine-orm dql symfony-2.8 doctrine-query


    【解决方案1】:

    在对有子表的表进行查询时。您也可以只获取父项,然后教义会自动处理子对象。如果Product 实体中有getCategory,它将自动解析类别。

    您正在寻找的可能是级联事件。其中Doctrine 2 ManyToMany cascade中解释了

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-07-13
      • 1970-01-01
      • 1970-01-01
      • 2017-11-05
      • 1970-01-01
      相关资源
      最近更新 更多