2017-03-24 48 views
1

我正在使用干預圖像(http://image.intervention.io/)程序包並使用其Laravel集成。正如文件中所述的離子我已經加入以下內容服務提供商:Laravel 5.4和Intervention Image調用未定義的方法Illuminate Database Query Builder :: image()

Intervention\Image\ImageServiceProvider::class 

,並增加了以下別名外牆

'Image' => Intervention\Image\Facades\Image::class 

在我的控制,我正是這樣做的文檔狀態:

// Create a thumbnail for the image 
    $thumb = Image::make('images/' . $date . "/" . $request->file->hashName()); 
    $thumb->resize(320, 240); 
    $thumb->save('images/' . $date . "/thumb_" . $request->file->hashName()); 

但我發現了這個錯誤:

ErrorException: Call to undefined method Illuminate\Database\Query\Builder::image() 

編輯:

它可能是類名稱中可能的衝突?我也有一個叫做圖像模型,所以我想可能有一些做與

// Save the image details to the database 
    $image = new Image; 
    $image->filename = $request->file->hashName(); 
    $image->path = 'images/' . $date; 
    $image->album_id = $request->id; 
    $image->save(); 

    // Create a thumbnail for the image 
    $thumb = Image::make('images/' . $date . "/" . $request->file->hashName()); 
    $thumb->resize(320, 240); 
    $thumb->save('images/' . $date . "/thumb_" . $request->file->hashName()); 

回答

3

是的,它是一個類名衝突。您可以使用此:

$thumb = \Intervention\Image\Facades\Image::make('images/' . $date . "/" . $request->file->hashName());

,並在你的代碼刪除use Image;use Intervention\Image\Facades\Image;

相關問題