从数据库传递Assetic图像路径

时间:2013-07-01 14:37:46

标签: php image symfony assetic

我被困了几天,我正在寻找一些方向。

我试图将存储在数据库中的图像路径调用到twig文件以显示所述图像。下面的树枝示例,我期待相同的图像显示两次。检查渲染的html时,变量传递数据库中的路径,但不显示第一个图像。

来自控制器:

'logo' => $vendor->getLogovendors()

从数据库列logoVendors:

<img src={{asset('bundles/loginlogin/img/fs_logo_large.png')}} />

来自树枝:

<div class="container">
  {{logo | raw}}
  <img src={{asset('bundles/loginlogin/img/fs_logo_large.png')}} />
</div>

我是Symfony及其资产管理的新手。任何帮助或正确方向的刺激将不胜感激。

1 个答案:

答案 0 :(得分:1)

您通常只应将路径存储到数据库中的图像中!

如果 logo 是您传递给包含图片路径bundles/loginlogin/img/fs_logo_large.png的模板的变量,您可以使用twig的资产函数将其包含在内,如下所示:

 <img src="{{ asset(logo) }}"/>

你正在尝试做什么(评估字符串中的树枝函数)也可以解决...但我不推荐它。

如果要在数据库中存储包含{{ asset() }}的完整代码,则需要使用twig评估字符串中的代码。

这意味着twig将执行字符串中的代码而不是仅仅打印它。

可以使用this answer中的评估过滤器来实现。

最终结果将是:

{{ logo |evaluate |raw }}