我正在使用Laravel构建一个事件管理系统。用户可以上传要与其活动一起显示的图像。我的img标签正在index.blade.php
上运行,并假设我可以在show.blade.php
页面上使用相同的代码,但似乎没有。
我将图像存储在public/images
中,我知道我应该使用存储,但我仍然在学习基础知识,所以现在发现这很容易。
<img style="width:100%" src="images/{{$event->image}}">
答案 0 :(得分:4)
正如@Frank Ayyaz所说,你可以使用反斜杠来解决另一个问题,Laravel-way使用public_path方法返回公共目录的完全限定路径。 所以你可以这样做:
{{1}}
答案 1 :(得分:3)
请使用asset()
方法。 asset()
方法用于包含CSS/JavaScript/images files
,您可以将其用作:
{{ URL::asset('images/'.$event->image) }}
<img style="width:100%" src="{{ URL::asset('images/'.$event->image) }}">
您也可以将此功能用于CSS and js
。
<link href="{{ asset('css/style.css') }}" rel="stylesheet">
<script src="{{ asset('js/custom.js') }}"></script>
详情请见本文:
https://medium.com/@zwacky/laravels-url-to-vs-url-asset-fd427ed6f7ef
答案 2 :(得分:1)
我建议不要使用URL::asset
而只使用资产方法,因为有时URL可能会在显示图像时导致问题...并使用dd()
函数并检查您是否获得了路径{{1 }},Public_path
或图像之类的自定义存储在公共目录中。
您可以使用Laravel的storage_path()
方法并使用任何您喜欢的前缀..
对于静态
asset()
动态
<img src="{!! asset('assets/images/cams/cam-01.png') !!}" class="img-fluid"
alt="Card image cap">
答案 3 :(得分:0)
当你使用js或css或图片时,你应该使用{{asset(&#39; path&#39;)}}来获取资源,它与你使用的刀片有关,但与资源路径有关。