Я в настоящее время в процессе обновления проекта Laravel 4.2 до 5.0 я уже делает разумный прогресс до этой конкретной ошибки:FatalErrorException в строке 750 Model.php: Класс не найден Laravel5
FatalErrorException в модели .php line 750: класс «SAPProduct» не найден.
Мой класс SapProduct вызывается из моего класса Product с отношениями 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');
}
}
product.php
namespace App\Models;
use Eloquent;
class Product extends Eloquent
{
...
public function sapProduct()
{
$relationship = $this->hasOne('App\Models\SapProduct', 'ItemCode', 'itemcode');
}
...
}
Model.php (строки 746-755)
public function hasOne($related, $foreignKey = null, $localKey = null)
{
$foreignKey = $foreignKey ?: $this->getForeignKey();
$instance = new $related;
$localKey = $localKey ?: $this->getKeyName();
return new HasOne($instance->newQuery(), $this, $instance->getTable().'.'.$foreignKey, $localKey);
}
Я прошу прощения, если я пропускаю любую другую необходимую информации, я добавлю больше как/если потребуется.
Благодаря
Я не знаю laravel, но вы включили php-файл в определение класса? или делает это для вас? в стандартном php вам нужно 'require_once' файла, в котором класс деформирован. – inetphantom
Является ли пространство имен подходящим для модели SapProduct? –
@KA_lin Я бы предположил, что это вопрос с интервалом между именами, но я не могу решить, какова проблема на самом деле. модель SapProduct находится в том же месте, что и все другие модели, и это имя находится на одинаковом расстоянии, но это модель, связанная с отношением hasOne. – Joe1992