使用Symfony处理保存到数据库中的图像



我遇到了一个小而琐碎的应用程序的问题,我创建了一个应用程序来帮助我学习Symfony 3。 该应用程序简单允许我在创建新博客文章时上传图像。

我正在使用 Symfony 3 文档来学习上传文件,在其中,它建议我使用 md5() 哈希方法将文件重命名为唯一名称,以请求文件的一个奇怪的名称。

一切都可以找到,直到我想在索引.html.twig 文件中显示图像。 我的印象是,我可以简单地使用我用来导入引导程序和其他公开可见文件的 asset() 方法,然后简单地将文件名附加到其末尾。 但似乎没有任何效果。

以下是我尝试过的一些事情。

<img src="{{ asset('blog/images/') }}{{ blog.imageUrl }}">
<img src="{{ asset('blog/images/', { 'imageUrl': blog.imageUrl }) }}">
<img src="{{ asset('blog/images/' . blog.imageUrl) }}  ">

可能还有几种不同的组合,我已经尝试过,但可以记住。 现在我找到了一些关于 asset() 方法的文档,但似乎没有任何内容表明您可以使用它,然后将文件名附加到它的末尾,而且我没有找到任何允许我直接指向 web 目录的信息, 博客/图像文件夹现在所在的位置。 因此,对此的任何帮助都将很棒。 非常感谢。

不知道blog.imageUrl的内容很难知道会发生什么。我对你问题的"正确"答案的猜测是你与选项 #3 非常接近,但是在树枝字符串连接是使用~符号而不是.

因此,在您的情况下,您将使用<img src="{{ asset('blog/images/' ~ blog.imageUrl) }}" />

问候

确保文件的新名称与数据库中存储的名称匹配。并确保您使用的路径正确。

最新更新