我有一个保存在storage / app / uploads中的文件,我想将此图像保存并显示为img src标签。
但是我不能
我正在尝试:
public function getSlider(Request $request)
{
$slider = Slider::find( $request->input('id') );
$slider->imagem = storage_path('storage/app/uploads/'.$slider->imagem);
return response()->json( $slider );
}
我正在尝试使用jquery和javascript显示
function getSliders() {
$.ajaxSetup({
headers: {'X-CSRF-TOKEN' : $('#token').val() }
})
$.ajax({
url: "{{ route('site.getSlider') }}",
type: "post",
dataType: "json",
data: {
id: $('#id').val()
}
}).done( r => {
console.log('r',r)
$('#description').val( r.description )
setImage( r.image )
})
}
并设置图片
function setImage( image ){
var newImage = document.createElement('img');
newImage.setAttribute('src', image);
newImage.width = 500;
newImage.heigth = 200;
document.getElementById("photo").innerHTML = newImage.outerHTML;
}
当我想从public / img访问图像时
<img src="{{ URL('img/myImage.png') }}">
但是我想从存储/应用/上传访问
答案 0 :(得分:1)
尝试将图像保存在公用文件夹而不是存储中 很简单,您可以使用public_path()函数进行访问。
答案 1 :(得分:0)
这将返回文件路由(没有url)(如果您看到日志显示/ var / www ....等)
storage_path('storage/app/uploads/'.$slider->imagem);
您应该使用资产助手来创建图片的网址
asset( 'storage/app/uploads/'.$slider->imagem);
在此之前,您需要运行此命令以创建从公用文件夹到存储文件夹的符号链接。
php artisan storage:link
请尝试一下,让我知道它如何工作:)
答案 2 :(得分:0)
首先,运行以下命令:
php artisan storage:link
然后,在任何视图中,您都可以借助 url 帮助器访问图像。
url('storage/app/uploads');