php - Symfony Twig - 图片不显示

标签 php image symfony upload twig

这里有点困惑。我查看了一些线程,但他们没有解决它。

1)  <img src="/web/uploads/ce438b2eb1c01d85f3d6d6c52efc1175.png"/>

2)   <img src="{{ asset('/uploads/ce438b2eb1c01d85f3d6d6c52efc1175.png')}}"/>

编辑:

2) 作品
1) 没有。

疯狂的是,在 PHPstorm 中,如果我在 src 路由中执行/web 它会为我选择它,然后它会为我选择上传,甚至可以看到该文件。它只是不会显示!?

下面对我有用,它显示图像。所以现在并不急于这样做。然而有趣的是,为什么 1) 不起作用?

  <img src="{{ asset('/uploads/' ~ media)}}"/>

最佳答案

通过搜索文档应该很容易找到答案。

<img src="/web/uploads/ce438b2eb1c01d85f3d6d6c52efc1175.png"/>

不起作用,仅仅是因为,如果您将这段代码写在里面,比方说,AppBundle/Resources/views/Default/index.html.twig 文件,那么这意味着web/uploads/ 目录结构应该存在于此目录中 (AppBundle/Resources/views/Default/) - 并且在其中包含图像。

这不是你的情况。所以对于 AppBundle/Resources/views/Default/index.html.twigsrc 应该是:

<img src="../../../../../uploads/ce438b2eb1c01d85f3d6d6c52efc1175.png

这就是 asset() 函数很有用的原因。因为它将路径映射到你的公共(public)目录(在 composer.json 文件中声明,在 symfony-web-dir 键下);因此,无论您从何处调用此函数,它始终会返回公共(public)目录的路径,因此您不必担心所有这些 ../../ 包含。

关于php - Symfony Twig - 图片不显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44000064/

相关文章:

php - 如何允许只从一个域上传 PHP?

python - 保存一组 url 中的多个图像

java - 互动背景

ubuntu - Doctrine :database:create 时出现 Symfony 错误

php - PHP 7.1+ Windows readline扩展并非所有功能都存在

php - 处理 AJAX 请求最有效的方法是什么?

php - Ajax 加载元标签

用于调整图像大小的 php-css 编辑(wordpress 主题)

rest - 在 FOSRestBundle 中使用 Symofny Forms 处理 POST 请求

php - Symfony 2 使用 POST 重定向