Model.php第750行中的FatalErrorException:在Laravel5中找不到类

Model.php第750行中的FatalErrorException:在Laravel5中找不到类,php,laravel,laravel-5,Php,Laravel,Laravel 5,我目前正在将Laravel 4.2项目升级到5.0,在出现以下错误之前,我一直在取得合理的进展: Model.php第750行中的FatalErrorException:未找到类“SAPProduct”。 我的SapProduct类是从我的产品类中调用的,它有一个hasOne关系,我不明白为什么Laravel找不到它 SapProduct.php namespace App\Models; use Eloquent; class SapProduct extends Eloquent {

我目前正在将Laravel 4.2项目升级到5.0,在出现以下错误之前,我一直在取得合理的进展:

Model.php第750行中的FatalErrorException:未找到类“SAPProduct”。

我的SapProduct类是从我的产品类中调用的,它有一个hasOne关系,我不明白为什么Laravel找不到它

SapProduct.php

namespace App\Models;

use Eloquent;

class SapProduct extends Eloquent
{
    public function brand()
    {
        return $this->belongsTo('App\Models\Brand', 'U_Brand', 'Name');
    }
}
namespace App\Models;

use Eloquent;

class Product extends Eloquent
{
    ...
    public function sapProduct()
    {
        $relationship = $this->hasOne('App\Models\SapProduct', 'ItemCode', 'itemcode');
    }
    ...
}
Product.php

namespace App\Models;

use Eloquent;

class SapProduct extends Eloquent
{
    public function brand()
    {
        return $this->belongsTo('App\Models\Brand', 'U_Brand', 'Name');
    }
}
namespace App\Models;

use Eloquent;

class Product extends Eloquent
{
    ...
    public function sapProduct()
    {
        $relationship = $this->hasOne('App\Models\SapProduct', 'ItemCode', 'itemcode');
    }
    ...
}
Model.php(第746-755行)

如果我遗漏了任何其他必要的信息,我深表歉意,如果需要,我将添加更多信息


谢谢

在这个问题上花了太多时间后,我找到了问题的症结所在

该关系通过另一个模型链接,该模型与“SapProduct”的关系没有正确的名称空间

有问题的模型是ProductVariation.php,其行不正确:

$relationship = $this->hasOne('SAPProduct', 'ItemCode', 'itemcode');
需要时:

$relationship = $this->hasOne('App\Models\SAPProduct', 'ItemCode', 'itemcode');
这也是拉雷维尔将SapProduct错误带回首都而不是骆驼案的原因


感谢所有试图帮助的人

我不知道laravel,但您是否包含了类定义所在的php文件?还是拉威尔会帮你?在standart php中,您需要一个定义类的文件
require\u once
。模型SapProduct的名称空间可以吗?@KA\u lin我想这是一个名称间距问题,但我无法确定实际问题是什么。SapProduct模型与所有其他模型位于同一位置,且名称间隔完全相同,但这是与hasOne关系相关的模型。@inetphantom Laravel会为您处理此问题。您的模型是否位于名为
models
的目录中。Laravel使用PSR-4标准自动加载类。因此,请确保所有具有名称空间
App\Models
的类都位于App目录中名为
Models
的目录中。这对我也有帮助!谢谢从4.2升级到5.x的难度很大祝你好运。保持使用雄辩而不是使用/Illum../雄辩/Model有效?@commandantp我很高兴它帮助了我以外的人,是的,这次升级有很多事情要做,之后还有2次升级!我还没有遇到使用“使用雄辩”的问题,所以我想这没关系。节省了我的另一个小时@1992年6月