2016-04-21 44 views
0

我正在使用Laravel和Intervention來處理用戶的文件上傳,我已經使用Composer安裝了干預,但是當我嘗試使用它的某些功能時,我收到了此錯誤消息Class 'Intervention\Image\Facades\Image' not found我已檢查我app.php文件,我已經添加正確的代碼行別名和供應商,但現在我不知道是什麼問題使用干涉時未找到類圖像

這裏是我的功能

public function postAvatarUpload(Request $request) 
    { 
     $this->validate($request, [ 
      'image' => 'required|image|max:3000|mimes:jpeg,jpg,png', 
     ]); 
     $user = Auth::user(); 

     $usersname = $user->username; 
     $file = $request->file('image'); 
     // $ext = $file->getClientOriginalExtension(); 
     $ext= Input::file('image')->getClientOriginalExtension(); 
     $filename = $usersname . '.' . $ext; 
     if (Storage::disk('public')->has($usersname)) { 
      Storage::delete($usersname); 
     } 
      Storage::disk('public')->put($filename, File::get($file)); 

      $path = public_path('app/public/'. $filename); 
      Auth::user()->update([ 
       'image' => $path, 
      ]); 
     $resizedImg = Image::make($path)->resize(200,200); 
     // $ext = $file->getClientOriginalExtension(); 

     return redirect()->route('profile.index', 
       ['username' => Auth::user()->username]); 
    } 

回答

0

您還需要在導入它命名空間之後的文件頂部。既然你說你已經設置的門面時,所有你需要做的是:

use Image; 
+0

我把使用干預\圖片\外立面\圖片;剛剛嘗試過你說的話,我正在找到Class'Image'找不到 – Joey93

+0

這是一個非常愚蠢的問題,但它確實有問題 - 你確定該軟件包實際上已安裝,而且Composer不只是更新composer.json文件? –

0

添加門面和提供者作爲documentation描述。然後運行composer dumpauto -o命令。

然後加入use Image到類,或使用這樣的:

$resizedImg = \Image::make($path)->resize(200,200); 
+0

我已經做到了這一點,但仍然沒有什麼,我從文檔中可以看到的唯一的事情是,我的配置文件夾中沒有image.php文件,但我正在使用Laravel 5.2 – Joey93

+0

從文檔中嘗試此命令: :publish --provider =「Intervention \ Image \ ImageServiceProviderLaravel5」 - 這個命令應該將配置文件複製到'config'文件夾中。 –

+0

謝謝我已經做到了這一點,但我沒有收到任何標籤[] – Joey93