web-dev-qa-db-ja.com

クラス 'App \ Http \ Controllers \ Excel'がLaravelに見つかりません

私のコントローラーには次のようなコードがあります:

Excel::create('Laravel Excel', function($Excel) {

        $Excel->sheet('Excel sheet', function($sheet) {

            $sheet->setOrientation('landscape');

        });

    })->export('xls');

エイリアス配列のconfig/app.phpでこれを定義しました:

'Excel'     => 'Maatwebsite\Excel\ExcelServiceProvider',

なぜ私はそれをこのライブラリで動作させることができないのか分かりません...

14
Lulzim

Excel::createの代わりに\Excel::createを使用するか、現在のネームスペースuse Excel;の後にファイルの先頭を追加すると、Excel::createを使用できるようになります。

そして2番目のエラーはあなたが使ったことです:

'Excel'     => 'Maatwebsite\Excel\ExcelServiceProvider',

そしてあなたは使うべきです:

'Excel' => 'Maatwebsite\Excel\Facades\Excel',

代わりに docs に従います。

21

時々、構成キャッシュをクリアすると機能する

php artisan config:cache

これは、すべての手順を正しく実行した後でも機能するはずですが、それでも"Class 'App\Http\Controllers\Excel' not found in Laravel"エラーが発生します。

5
TharinduLucky

結局、これが一番上にあるかどうかを確認する必要があります:

use Maatwebsite\Excel\Facades\Excel;