提问者:小点点

如何在树枝符号中显示不同表格的信息?


我需要显示一个表,例如4列,我有一个不同信息的Palmares实体。

如何将来自另一个sql表的数据放在同一个循环中,其他信息与palmares.categorie.code链接在一起这里是我用html.twig模板的一部分。

{% for palmares in palmares %}
<tr>
 <td>{{palmares.categorie.code}}</td>
 <td>other information from another table</td>
 <td>{{palmares.compet.date |date("m/d/Y")}}</td>
 <td>{{palmares.compet.lieu}}</td>
</tr>
{% endfor %}

编辑:

例如,我有一个实体Palmares,一个带有变量$code integer的实体Categorie。 如果我在twig中显示palmares.categorie.code,它将显示整数。

我还有一个带有变量代码的类OtherInformation,它与palmares.categorie.code链接。

我的PalmaresRepository有如下功能:

public function getPalmares(int $id)
    {
        return $this->createQueryBuilder('p')
            ->where('p.saison = :date')
            ->andWhere('p.club = :id')
            ->setParameter('date', date("Y"))
            ->setParameter('id', $id)
            ->getQuery()
            ->getResult();
    }

共1个答案

匿名用户

如果信息链接到您的palmares上,您可以简单地在TWIG中连接到它(下面是一个带有查询构建器的代码,但如果您愿意,也可以使用DQL):

/* /src/Repository/PalmaresRepository.php */
public function getPalmaresWithJoinedEntity()
{
  $qb = $this
    ->createQueryBuilder('p')
    ->leftJoin('p.joinedField', 'j')
    ->addSelect('j')
  ;

  return $qb
    ->getQuery()
    ->getResult()
  ;
}
/* /templates/your_template.html.twig */
{# ... #}
{{ palmares.joinedProperty.someField }}

请注意,您并没有被强制加入存储库以获取连接的数据,您可以在不加入的情况下简单地更改模板,但是您将面临N+1问题(您将获得每个palmares的附加查询,以获取每个连接的属性)