我的Laravel关系有问题。我在控制器中使用了with()方法,在我的模型中使用了beforeTo。我的关系很正常,但是如果我得到父母的数据,就会出现问题。
我的模型
public function pekerjaan()
{
return $this->belongsTo('App\Pekerjaan', 'pekerjaan', 'id');
}
这是我的控制器
$data = Anggota::with('pekerjaan')->where('nik',$nik)->first();
return $data;
答案 0 :(得分:1)
您有一个名为pekerjaan
的列和一个名为pekerjaan
的关系。 Laravel对列名的重视程度超过关系。因此,您可以使用属性pekerjaan
获取列值(pekerjaan
的列)。为您的关系命名,以解决此别名问题。
在您的模型中。
function pekerjaan_parent(){
return $this->belongsTo('App\Pekerjaan', 'pekerjaan', 'id');
}
发挥作用
return $data->pekerjaan_parent->nama_pekerjaan;