当我尝试运行Laravel时出现此错误
Class' Menumodel'未找到 在HasRelationships.php(第487行)
这是我的数据结构
这是MainComposer.php
<?php
namespace App\Http\ViewComposers;
use Illuminate\View\View;
use App\Menumodel as menu;
class MainComposer
{
public $items = [];
public function __construct()
{
$this->items = menu::tree();
}
public function compose(View $view)
{
$view->with('items', end($this->items));
}
}
MenuModel
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class Menumodel extends Model
{
//
public $table = 'Menu';
protected $fillable = ['MenuParent','MenuName','MenuPath','MenuIcon','MenuOrder','RouteName'];
public function parent() {
return $this->hasOne('Menumodel', 'MenuCode', 'MenuParent');
}
public function children() {
return $this->hasMany('Menumodel', 'MenuParent', 'MenuCode');
}
public static function tree() {
return static::with(implode('.', array_fill(0, 4, 'children')))->where('MenuParent', '=', NULL)->get();
}
}
我aldredy尝试使用\App\Menumodel as menu;
,但仍然没有什么不同。我该如何解决?
答案 0 :(得分:1)
您的人际关系不正确。您需要提供完整的类命名空间。
while
我还删除了你的本地和外键,因为如果使用Laravel,这些通常是snake_case,而不是StudlyCase,所以你可能需要仔细检查它们。