此代码可以正常运行并正确保存图像:
if(request()->file("avatar_upload")) {
$file = request()->file("avatar_upload");
$ext = $file->guessClientExtension();
if($ext == "jpg" || $ext == "jpeg" || $ext == "png"){
$file->storeAs('public/avatars/' . Auth::user()->id , "avatar.jpg");
}
}
现在要显示它,我使用它,它适用于Windows但不适用于Linux:
@if(File::exists('/storage/avatars/'.Auth::user()->id))
<div class="image-upload">
<label for="avatar_upload">
<img src="{{asset('/storage/avatars/'.Auth::user()->id)."/avatar.jpg"}}"/>
</label>
<input id="avatar_upload" name="avatar_upload" type="file"/>
</div>
@else
<div class="image-upload">
<label for="avatar_upload">
<img src="/assets/admin/img/noimage.png"/>
</label>
<input id="avatar_upload" name="avatar_upload" type="file"/>
</div>
@endif
这总是在Linux中显示noimage.png,同时检索并显示图像Windows。
知道为什么吗?
答案 0 :(得分:1)
如果您已经为&#34; addTodoFunction
&#34;创建了文件夹权限并得到同样的问题:
我认为您的代码需要更新如下:
storage/avatars
希望这对你有用!