Laravel Blade视图中图片无法正常显示问题求助
Laravel视图中通过模型字段显示图片的解决方案
问题根源
你当前的$partner->logo字段存储的完整路径是partnerLogos/1665127813.jpg,而你在视图中重复拼接了partnerLogos/,导致最终生成的URL路径重复,无法正确指向图片资源。
正确实现方式
直接将storage/前缀和模型字段拼接即可,不需要额外添加partnerLogos/:
<img src="{{ asset('storage/' . $partner->logo) }}" alt="Partner Logo">
验证逻辑
- 当
$partner->logo的值为partnerLogos/1665127813.jpg时,上述代码会生成正确的URL:http://localhost:8000/storage/partnerLogos/1665127813.jpg,和你手动写死文件名的有效路径完全一致。 - 之前错误的写法会生成
http://localhost:8000/storage/partnerLogos/partnerLogos/1665127813.jpg,路径重复导致资源不存在。
额外说明
如果后续需要调整存储路径,只需要修改控制器中storeAs的第一个参数即可,视图中的代码无需改动,保证了代码的可维护性。
内容的提问来源于stack exchange,提问作者Fab833
相关产品推荐
相关产品推荐

