我有两张桌子
1)cms系统
2)cms U翻译
表1)cms

id
url
status

表2)cms U翻译
object_id
title
lang_id

那么,在twig文件中显示这两个表值的左连接查询是什么?
这是我的问题
    $q = $em->createQuery("SELECT c , d FROM Dashboard\CmsBundle\Entity\Cms c
    JOIN c.translations d
    WITH c.id = d.object AND c.status = 1
    GROUP BY c.sortOrder
    ORDER BY c.sortOrder ASC "
    );

这是我在index.html.twing文件中显示的代码
    {% for entity in enitity_cms %}
    <a href="{{ path('_cmsAboutUs' , { slug : entity.url }) }}" >{{ entity.Title }}</a>
    {% endfor %}

但不打印在{{ entity.Title }}
那么如何在twing文件中打印cms_translations.title呢?
如何从第二个表打印html文件中的值?

最佳答案

DQL:

SELECT c , d FROM Dashboard\CmsBundle\Entity\Cms c
JOIN c.translations d WHERE c.status = 1

这可以确保将翻译加载到Cms对象中。
然后在“细枝”模板中:
{% for entity in entity_cms %}
  {% for translation in entity.translations %}
     <a href="{{ path('_cmsAboutUs' , { slug : entity.url }) }}" >{{ translation.Title }}</a>
  {% endfor %}
{% endfor %}

关于php - Symfony2创建左联接,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19109945/

10-14 15:15