symfony - Sonata Media Bundle - 如何按 ID 获取图像或画廊
问题描述
是否可以通过 Id 从 Sonata Media Bundle 中获取图像或画廊?
我知道如何获取与实体相关的图像或画廊。但在这种情况下,我只想获得没有实体的图像或画廊。
就像是:
$media = $mediaProvider->getMediaById(12);
或者
$gallery = $mediaProvider->getGalleryById(2);
有谁知道如何做到这一点?
解决方案
我找到了解决办法!
在控制器中获取图库:
$galleryId = 3;
$repo = $this->getDoctrine()->getRepository('ApplicationSonataMediaBundle:Gallery');
$gallery = $repo->find($galleryId);
$gallery = $gallery->getGalleryHasMedias();
在树枝模板中:
{% for img in gallery %}
{% media img.media, 'gallery' %}
{% endfor %}