我被困了几天,我正在寻找一些方向。
我试图将存储在数据库中的图像路径调用到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及其资产管理的新手。任何帮助或正确方向的刺激将不胜感激。
答案 0 :(得分:1)
您通常只应将路径存储到数据库中的图像中!
如果 logo 是您传递给包含图片路径bundles/loginlogin/img/fs_logo_large.png
的模板的变量,您可以使用twig的资产函数将其包含在内,如下所示:
<img src="{{ asset(logo) }}"/>
你正在尝试做什么(评估字符串中的树枝函数)也可以解决...但我不推荐它。
如果要在数据库中存储包含{{ asset() }}
的完整代码,则需要使用twig评估字符串中的代码。
这意味着twig将执行字符串中的代码而不是仅仅打印它。
可以使用this answer中的评估过滤器来实现。
最终结果将是:
{{ logo |evaluate |raw }}