Laravel: Class "App\Models\Device" 未在 web.php 中找到(仅在生产中)

Laravel: Class "App\Models\Device" not found in web.php (only in production)

我正在尝试制作一个示例项目来学习 laravel。我在我的电脑上设置了项目,一切正常:我有我的 web.php/ 路由到视图,但在此之前它会收集设备以便它可以向您显示一些数据。

我决定尝试将其托管在 Debian AWS 实例上,因此我在 /var/www/ 中克隆了我的存储库,迁移了数据库,编写了 .envcomposer install、设置文件夹所有权管理员用户和存储权限以及 bootstrap.

配置 nginx 后,我通过导航到 url 进行了尝试,答案是 Class "App\Models\Device" not found.

我检查了名称空间、文件名,我什至读到 debian 是大写敏感的傻瓜,所以我仔细检查了每个名称中的每个大写字母,因为 app 文件夹被命名为 app 而不是 App 我什至尝试导入它作为 app\Models\Device 但无济于事。

我也尝试过 composer dump-autoload SO 上建议的那样,但没有任何改变。

我是不是漏掉了什么?

Device.php

<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\SoftDeletes;

class Device extends Model
{
    use HasFactory;
    use SoftDeletes;


    protected $fillable = [
        'serial',
        'livello_acqua',
        'umidita',
        'temperatura',
        'livello_mangime',
        'stato_rele_1',
        'stato_rele_2',
        'stato_rele_3',
        'stato_rele_4',
        'descrizione',
    ];

    public static function findBySerial($serial){
        return Device::where('serial', $serial)->get();
    }

    public static function findByUser($id){
        return Device::where('user_id', $id)->get();
    }

}

web.php

<?php

use app\Models\Device; //\app\Models\Device - App\Models\Device - \App\Model\Device
use Illuminate\Support\Facades\Route;
/*
|--------------------------------------------------------------------------
| Web Routes
|--------------------------------------------------------------------------
|
| Here is where you can register web routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| contains the "web" middleware group. Now create something great!
|
*/

Route::get('/', function () {
    $devices = Device::all();

    return view('index')->with(['devices' => $devices]);
});

结构:

- app
- - Models
- - - Device
- - ...
- ...
- routes
- - web.php
- ...

我觉得我快疯了,我刚刚用 App\Models\Device 再次尝试并出现错误,将其重新更改为 app\Models\Device 并再次出现错误并最终重新更改它到 App\Models\Device 现在它可以工作了......不知道为什么或如何...

尝试像这样导入它 use App\Models\Device; 而不是 use app\Models\Device;

看到这个