我有许多不同的角色,他们在我的laravel应用程序中基本上都是“用户”。
我遇到了雄辩的关系问题,我可以在用户作为车主的情况下轻松获得其中一种关系,但是当我尝试在(不同的)用户的上下文中获得另一种关系时维护经理,我收到此错误:Cannot redeclare class App\Models\User
。
serviceAgreement model
public function manager()
{
return $this->belongsTo('carfreak\Models\User','manager_id','id');
}
正常工作:
$managers = $owner->serviceAgreement()->get();
产生错误
$managers = $owner->serviceAgreement()->with('manager')->get();
我认为问题在于我如何写我的关系 - 我指的是\Models\User
。我试图引用登录用户,但它(a)对此应用程序没有意义,(b)无论如何都不起作用。
return $this->belongsTo(Auth::User(),'manager_id','id');
请指点一下?
答案 0 :(得分:0)
这是因为App\Models\User
类被声明至少2次。改变
public function manager()
{
return $this->belongsTo('carfreak\Models\User','manager_id','id');
}
到
public function manager()
{
return $this->belongsTo('App\Models\User','manager_id','id');
}
你现在应该好了。
希望它有所帮助。