私はlaravel 5.2でプロジェクトを作成し、これをlaravel 5.3に移動しました。このために、ビューとコントローラーを新しいプロジェクトにコピーする新しいlaravel 5.3プロジェクトフォルダーを作成しました。Auth を機能させようとすると、多くの「undefined class」エラーが表示されます。
laravelのドキュメントをチェックすることで、私はこれを見ました。
https://laravel.com/docs/5.3/authentication#retrifying-the-authenticated-user
だから、app.phpで私は見る
'Auth' => Illuminate\Support\Facades\Auth::class,
コントローラーで、これで「未定義のクラス認証」を取得します
use Auth;
この「未定義のクラス」は、その行を次のように変更することで解決されます
use Illuminate\Support\Facades\Auth;
まず、「use Auth;」を使用できないのはなぜですか?
私のコントローラーファイルでは、DB、Auth、およびFileで「未定義のクラス」エラーが発生します
use DB;
use Auth;
use Illuminate\Support\Facades\Redirect;
use Illuminate\Http\Request;
use File;
私のapp.phpファイルでは、これらの名前は次のようにエイリアスされています
'App' => Illuminate\Support\Facades\App::class,
'DB' => Illuminate\Support\Facades\DB::class,
'Auth' => Illuminate\Support\Facades\Auth::class,
エイリアスの何が問題なのだろうか?
これに続いて、認証されたユーザーを取得しようとすると、ドキュメントに記載されているように、この行で十分です
Auth::user()
ここで、「user」は次のエラーをスローします。
Method 'user' not found in \Illuminate\Support\Facades\Auth
Google を使用して、Laravel 5.2 のファイルと Laravel 5.3 フォルダーを比較して確認しましたが、解決策は見つかりませんでした。多分ここに誰かが答えを持っていますか?上記のリンクで説明されているように、Laravel 5.2 プロジェクトで動作しました。
ありがとうございました
アップデート
次のコマンドを順番に実行して、プロジェクトを再構築してみてください。
composer update
php artisan config:clear
composer dump-autoload
しかし、まだ進歩はありません