首页 文章

在laravel 5.4中找不到FatalThrowableError类'App\Models\Patient'

提问于
浏览
1

我使用命令 php artisan make:model Patient 创建了一个模型 . 该命令在app文件夹中创建名为 Patient 的模型 .

在模型患者中:

namespace App;

use Illuminate\Database\Eloquent\Model;

class Patient extends Model
{
    //
    public function getPurchaseOrder(){
        return "Hello World";        
    }
}

在Controller PatientController中:

namespace App\Http\Controllers;
class PatientController extends Controller
{
  protected $patientModel;

public function __construct(Request $request, PatientInterface $patient)
    {
        parent::__construct($request);        
        $this->patientModel = new \App\Patient();
    }

   public function test(){
     echo $this->patientModel->getPurchaseOrder();
  }

}

它工作正常 . 问题是当我在app文件夹中创建一个名为 Models 的文件夹并移动Patient模型然后调用模型函数时会出现错误:

FatalThrowableError Class 'App\Models\Patient' not found

任何帮助将不胜感激 .

1 回答

  • 1

    当您将一个类移动到另一个目录时,要由作曲家使用PSR-4 standard加载它,您还必须更新类的命名空间以匹配 .

    namespace App\Models;
    

    此外,在运行make命令时,可以在其中包含一个名称空间,以自动将其放入具有正确名称空间的目录中:

    php artisan make:model Models\\Patient
    

相关问题