【问题标题】:Symfony2 LiipImagineBundle default imageSymfony2 LiipImagineBundle 默认图像
【发布时间】:2013-12-11 07:38:34
【问题描述】:

我正在将 LiipImagineBundle 用于使用 symfony2 构建的应用程序,并且我想在图像不存在时显示默认图像。 假设我有

<img src="{{ ('/profiles/foo.JPG') | imagine_filter('bar') }}" />

'/profiles/foo.JPG' 不存在时如何显示 default.jpg?

谢谢,

【问题讨论】:

标签: image symfony default liipimaginebundle


【解决方案1】:

这是一个老问题,但正确的(可能也是最简单的)方法是在 liip-imagine 配置文件中指定 default_image

http://symfony.com/doc/current/bundles/LiipImagineBundle/configuration.html

【讨论】:

    【解决方案2】:

    Ok Martin Lie 我为你找到了一个链接,我希望你能直接理解这个场景,因为默认情况下,Twig 无法测试 Phisicall 对象是否存在。所以你必须创建一个服务来帮助你制作它直接在 Twig...

    Create a service for twig

    别担心!

    【讨论】:

    • 谢谢。我将创建此服务。
    【解决方案3】:

    您测试图像变量是否存在... 例如,您是否从控制器发送了图像

    只做:

    {% if image is defined %}
            <img src="{{ image | imagine_filter('bar') }}" />
     {% else %}
            <img src="{{ ('/profiles/default.jpg') | imagine_filter('bar') }}" />
     {% endif %}
    

    【讨论】:

    • 谢谢,cobra18 - 感谢您的回复。我的场景是这样的:图像的名称将是用户的 id,它始终存在。在这种情况下是否有可能显示默认图像(如果物理图像不存在)?谢谢
    • 确实没问题!谢谢Martin Lie!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-05-26
    • 1970-01-01
    相关资源
    最近更新 更多