Symfony 4,为ManyToMany关系上下文中的findby自定义方法提供了简单的示例

时间:2018-11-22 10:24:11

标签: symfony doctrine many-to-many symfony4

我有两个简单的实体A和B :(由symfony 4自动创建的实体“ AB”)

enter image description here

通过这些示例数据:

enter image description here

在输入中,我只有一个实体B的名称(例如'foo')和一个实体A的名称(例如'A_b')

如何从存储库类(存储库类或B存储库类?)中,仅依靠字符串'foo'和'A_b'来获取实体B?

我必须获得ID为1的实体B

enter image description here

我不是DQL理论上的坚强用户。.我正在寻找正确的方法

1 个答案:

答案 0 :(得分:1)

您可以尝试以下代码:

 public function getBByName($name)
 {
    $qb = $this->createQueryBuilder('A');
    $qb->leftJoin('A.b', 'B');
    $qb->where('B.name= :name');
    $qb->setParameter('name', $name);

    $query = $qb->getQuery();
    $result = $query->getResult();
    return $result;
  }