2017-05-22 72 views
0

我有三个模型命名为Job,JobDetailCustomerJobJobDetailCustomer有很多关系,与Job有很多关系。 下面是表格的结构。与laravel中的三个表的雄辩关系5.4

Job 
id customer_id jobname 

JobDetail 
id job_id days 

Customer 
id name 

下面是型号:

class Job extends Model 
{ 
    public function job_details() 
    { 
     return $this->hasMany('App\JobDetail','job_id','id'); 
    } 

} 

class Customer extends Model 
{ 
    public function customer() 
    { 
     return $this->hasMany('App\Job','customer_id','id'); 
    } 
} 

class JobDetail extends Model 
{ 
    // 
} 

我试图执行下面的查询,但它像Call to undefined relationship [customer] on model [App\Job].

我查询抛出错误:

$data = Job::with(['job_details','customer'])->get(); 

可以将部分身体建议我如何连接这些模型并获取数据? 谢谢!

回答

0

您在Job模型中未指定customer的关系。

所以,这样的事情应该做的伎俩:

public function customer() 
{ 
    return $this->belongsTo('App\Customer','job_id','id'); 
} 
+0

谢谢它的工作! – 06011991