Symfony Liipimaginebundle-FOR循环中的图像
在细枝模板中使用Liipimaginebundle显示缩略图时遇到问题 我正在渲染索引:Symfony Liipimaginebundle-FOR循环中的图像,symfony,liipimaginebundle,Symfony,Liipimaginebundle,在细枝模板中使用Liipimaginebundle显示缩略图时遇到问题 我正在渲染索引: return $this->render('ad/index.html.twig', array( 'ads' => $ads, )); 在index.html.twig中,我使用FOR循环来显示与广告相关的缩略图 {% for ad in ads %} //with parameter - doesn't work {% set img = ad.main
return $this->render('ad/index.html.twig', array(
'ads' => $ads,
));
在index.html.twig中,我使用FOR循环来显示与广告相关的缩略图
{% for ad in ads %}
//with parameter - doesn't work
{% set img = ad.mainPhoto %}
<img src="{{ img | imagine_filter('thumb') }}" />
//working fine
<img src="{{ asset('/uploads/2.png') | imagine_filter('thumb') }}" />
{% endfor %}
使用“img”参数时,我遇到了一个异常:
在呈现模板期间引发了异常(“路由“liip_imagine_filter”的参数“path”必须匹配“+”(“给定”)以生成相应的URL”)
在这种情况下,定义路径的正确方法是什么?如果只将路径作为字符串传递给
imagine\u过滤器
,则添加资产
,它应该可以工作:
{% for ad in ads %}
{% set img = ad.mainPhoto|default %}
{% if img <> "" %}
<img src="{{ asset(img) | imagine_filter('thumb') }}" />
{% endif %}
{% endfor %}
{%用于ads%中的ad}
{%set img=ad.mainPhoto |默认值%}
{%if img”“%}
{%endif%}
{%endfor%}
您只将路径作为字符串传递给imagine\u过滤器
,添加资产
,它应该可以工作:
{% for ad in ads %}
{% set img = ad.mainPhoto|default %}
{% if img <> "" %}
<img src="{{ asset(img) | imagine_filter('thumb') }}" />
{% endif %}
{% endfor %}
{%用于ads%中的ad}
{%set img=ad.mainPhoto |默认值%}
{%if img”“%}
{%endif%}
{%endfor%}
你能告诉我们ad.mainPhoto
的类型和内容吗?@Veve ad.mainPhoto是一个带路径的字符串,例如/uploads/2.png你能告诉我们ad.mainPhoto
的类型和内容吗?@Veve ad.mainPhoto是一个带路径的字符串,例如/uploads/2.png感谢帮助!这是我的错。。。不幸的是,我有一个没有“主要照片”的“广告”。。。这就是例外的原因。顺便说一句,img |想象一下过滤器(“拇指”)也能工作:)它能工作。。。直到您拥有不同的资产环境。(想想CDN,静态文件服务器,…)。我已经根据你评论的第一部分为主照片添加了一个验证。谢谢你的帮助!这是我的错。。。不幸的是,我有一个没有“主要照片”的“广告”。。。这就是例外的原因。顺便说一句,img |想象一下过滤器(“拇指”)也能工作:)它能工作。。。直到您拥有不同的资产环境。(想想CDN,静态文件服务器,…)。我已经根据你评论的第一部分为mainPhoto添加了一个验证。