我对模型中的表关系有疑问。当我尝试添加hasMany关系时,弹出错误。
调用模型[App \ AllPlan]上未定义的关系[Plan100]。
这是主表模型places
protected $table = "places";
public $with = ["AllPlan"];
public function allplans()
{
return $this->hasMany("App\AllPlan");
}
和AllPlan
表模型
protected $table = "all_plans";
public function place()
{
return $this->belongsTo("App\Place");
}
没问题,直到这里。我可以在json响应的AllPlan
表中看到Places
数据...但是,当我尝试将hasMany
关系添加到AllPlan
表中时,问题弹出下面。
现在AllPlan
表模型如下所示。
protected $table = "all_plans";
public $with = [
"Plan100",
"Plan90",
];
public function place()
{
return $this->belongsTo("App\Place");
}
public function plan()
{
return $this->hasMany(
"App\Plan100",
"App\Plan90"
);
}
Plan100
表模型如下所示:
public function plan()
{
return $this->belongsTo("App\AllPlan");
}
但这给我一个错误。但是我不太确定我在哪里做错了。谢谢。
答案 0 :(得分:1)
在我看来,您正在尝试创建两个新的关系,但这不能在一个函数中完成。创建两个函数,然后像这样重构代码:
public function plan100()
{
return $this->hasMany(App\Plan100", 'foreign_key');
}
public function plan90()
{
return $this->hasMany(App\Plan90", 'foreign_key');
}