【问题标题】:Delete many to many relationship with DQL删除与 DQL 的多对多关系
【发布时间】:2014-05-20 22:18:08
【问题描述】:

我的 SF2 项目中有一个带有标签集合(多对多关系)的实体文章。

class Article
{
/**
 * @ORM\ManyToMany(targetEntity="Namespace\Entity\Tag", cascade={"persist"})
 */
private $tags;

在我的业务逻辑中,这篇文章可以包含很多标签。 在我的应用程序中,用户可以一次性重置所有这些标签。所以我必须删除连接表中的所有引用。

为了减少学说查询的数量,我想使用 DQL(保持一致)来做到这一点,但我找不到方法。

【问题讨论】:

标签: sql symfony doctrine-orm


【解决方案1】:

在您的自定义 EntityRepository 中创建 removeTags($article) 方法并输入如下内容:

DELETE FROM article_tag WHERE article_id = :article

我现在无法测试它,但这应该可以。

【讨论】:

  • 谢谢,但这是一个 SQL 查询,而不是 DQL。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-10-10
  • 1970-01-01
  • 2015-08-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多