在我的Laravel项目中,我正在尝试使用刀片将图像加载到我的视图中,但它显示为断开的链接。我用firebug检查它,src指向图像但没有显示任何内容。
我的图片位于我的项目的public / images / users / 3 / profilePictures /
中以下是view.blade.php中的<img>
<img class="com-profile-picture" src="images/users/{{ $follower->id }}/profilePictures/50thumb-{{ $follower->profilePicture->url }}" alt="{{ $follower->first_name }} {{ $follower->last_name }} Profile" width="50" height="50">
但是,当我加载页面时,我得到了这个:
当我用萤火虫检查图像时,我看到了:
这是正确的src,图像确实存在于我的public / images / users / 3 / profilePictures /目录中
任何人都知道为什么会这样吗?
答案 0 :(得分:7)
这可能会导致您处于不代表基本URL的路径中。您应该为相对于public/
文件夹的资产生成URL。使用URL::asset('path/to/asset')
生成网址。
{{ URL::asset("images/users/{$follower->id}/profilePictures/50thumb-{$follower->profilePicture->url}") }}
或者@lukasgeiter提到你可以简单地使用asset('path/to/asset')
助手。
答案 1 :(得分:0)
您可以尝试
php artisan storage:link
否则您可以使用此
此问题的简单解决方法(链接的错误)
在.env
文件
APP_URL=http://localhost
将此替换为
APP_URL=http://localhost:8000
然后将解决此问题。
答案 2 :(得分:0)
删除已经生成的符号链接,然后运行这个命令
php artisan storage:link