Sonata 媒体包中的图像路径
Posted
技术标签:
【中文标题】Sonata 媒体包中的图像路径【英文标题】:Image path in Sonata media bundle 【发布时间】:2018-02-06 23:06:07 【问题描述】:我正在尝试找到使用奏鸣曲媒体包显示图像的正确方法。
cdn:
server:
path: %kernel.root_dir%/../web/uploads
树枝文件
% path user.image, 'big' % <br>
<img src="% path user.image, 'big' %" class="my-4"/>
结果
C:\XXX\www\XXX\app/../web/uploads/image/0001/01/thumb_2_image_big.png
image
现在,如果我在浏览器中复制并粘贴第一个链接,它会将我带到图像。但是如果我将它用作图像标签的路径,它不会显示,如图所示。
有一种解决方法(通过将 cdn 路径修改为 ../../../../uploads),但我正在尝试找到一种“正常”的方式。
【问题讨论】:
【参考方案1】:试试
<img src="% path user.image, 'reference' %" ...
【讨论】:
感谢您的输入,但结果相同。 对不起,你清除缓存了吗?您使用哪个版本的 Sonata 和 Symfony? 根据documentation remove kernel.root_dir from path: path: /web/uploads 你为什么使用 %kernel.root_dir% ? 因为它不起作用。我得到类似localhost/web/uploads/image/0001/01/thumb_2_image_big.png ...没有捆绑包的名称,它应该是:localhost/"NameOfBundle"/web/uploads/image/0001/01/… 我不能在配置中写 bundle 的名称(我认为这不是一个好习惯),这就是我使用 kernal.root_dir 的原因以上是关于Sonata 媒体包中的图像路径的主要内容,如果未能解决你的问题,请参考以下文章
Symfony 2 Sonata 媒体包:在没有奏鸣曲管理员的情况下保存媒体文件图像
Symfony2 覆盖 Sonata 媒体图像提供程序。(将接口传递给构造函数)
集成 Sonata Media Bundle(媒体实体)和 Sonata Classiffication Bundle(标签实体)