[英]How to display images from user folder in public storage link on laravel
[英]How to display the image from the public/storage/images in Laravel
profile.blade.php
<form action="{{route('user.profile.update',$user)}}" method="post" enctype="multipart/form-data">
@csrf
@method('PUT')
<div>
<img height="100px;" class="img-profile rounded-circle" src="{{$user->avatar}}">
</div>
<br>
<div class="form-group">
<input type="file" name="avatar">
</div>
</form>
web.php
Route::put('admin/users/{user}/update','UserController@update')->name('user.profile.update');
用戶.php
public function getAvatarAttribute($value){
return asset($value);
}
用戶控制器:
public function update(User $user){
$inputs=request()->validate([
'file'=>['file'],
]);
if(request('avatar')){
$inputs['avatar']=request('avatar')->store('images');
}
$user->update($inputs);
return back();
}
}
這是一個profile.blade.php
如何在 Laravel 中顯示來自 public/storage/images 的圖像
如果我檢查圖像,src 是 src="http://127.0.0.1:8000/images/dT9gvraL3HbTlHcQly96YwoSJdikNj7fVL1dsIzT.jpeg"。 我怎么做錯了?
考慮到您存儲的圖像名稱不是 url。
現在,在 User.php 中,
public function getAvatarAttribute($value){
return asset('storage/'.$value);
}
希望這會幫助你。
我的錯,我跳過了你問題的某些部分。 您需要更改 User.php 中的路徑,如下所示:
public function getAvatarAttribute($value){
return asset("storage/$value");
}
為公共 URL 獲取可訪問的 url。 Laravel 為其提供了資產助手。
例如,如果您的圖像存儲在
公共/存儲/圖像/用戶.png
您可以輕松訪問如下圖像:
assets('storage/image/user.png') //輸出完整的url到文件
注意:公用文件夾被視為基本目錄。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.