我有一个模型 Job
。
一个Job
可以在开始之前要求完成其他Jobs
。
Job
可以是许多Jobs
同时需要的先决工作。
所以,假设Job A
依赖于Job B
和Job C
,我希望能够调用job->requiredJobs
并获得这两个工作。
目前我有以下内容:
class Job extends Model
{
public function requiredJobs()
{
return $this->hasMany('App\Job', 'required_job_id');
}
}
然而,我发现如果我创建一个名为
Job D
的工作,并要求它需要Job B
和Job C
,它会覆盖Job A
的必需工作字段,因为它似乎是将required_job_id
添加到所需工作中,而不是在依赖工作上创建一个数组。希望这一切都有意义!我不确定是否需要两个定义,或者
hasMany
是错误的关系(应该使用belongsToMany
代替?...)