Class 〇〇 not foundを解決したい[heroku,laravel]
解決したいこと
現在、簡単なメモアプリを制作しています。
アプリをherokuデプロイ後、メモ登録ページに遷移しようとした際に500エラーが発生しました。
エラーログを見ると、Class 'App\Models\Category'
とエラーメッセージが出たので、Categoryモデルに問題がありそうなのはわかるのですが解決方法がわからないため、知恵をお貸しいただきたいです。
開発環境
バックエンド
PHP:7.3.11
Laravel:7.30.4
開発環境
MAMP/MySQL(MAMP環境)
インフラ
Heroku
発生している問題・エラー
出ているエラーメッセージを入力
画面
500エラーの発生
エラーを発生させた
class 'App\Models\Category' not found
とエラーが出た
https://gyazo.com/ad681a43276ad26e44fb1364cc4fceb5
2021-05-06T11:02:23.563195+00:00 app[web.1]: [06-May-2021 20:02:23 Asia/Tokyo] [2021-05-06 20:02:23] production.ERROR: Class 'App\Models\Category' not found {"userId":1,"exception":"[object] (Error(code: 0): Class 'App\\Models\\Category' not found at /app/app/Http/Controllers/PostController.php:33)
自分で試したこと
モデル名、クラス名、コントローラー名の確認
Class 'App\\Models\\Category' not found at /app/app/Http/Controllers/PostController.php:33
とあったのでPostControllerの33行目とモデルを確認してみました。
PostController.php
<?php
namespace App\Http\Controllers;
use App\Models\Category;
use App\Models\Post;
use App\Models\User;
use Auth;
use Illuminate\Http\Request;
class PostController extends Controller
{
public function create()
{
$categories = Category::all();
return view('post.create', ['categories' => $categories]);
}
Category.php
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class Category extends Model
{
protected $guarded = array('id');
public function posts(){
return $this->hasMany(Post::class);
}
}
自分で試したこと2
$ composer dump-autoload
0