我有两个一对一关系的Eloquent模型:mission
有一个vehicle
,vehicle
属于一个mission
。
我在两个模型中建立了如下关系:
class Vehicle extends Eloquent {
public function mission() {
return $this->belongsTo('Mission');
}
}
class Mission extends Eloquent {
public function vehicle() {
return $this->hasOne('Vehicle');
}
}
我正试图抓住一个完整的任务&基于车辆名称的车辆行:
$results = Mission::with('vehicle')->whereHas('vehicle', function($q) {
$q->where('name','Falcon 9 v1.0');
});
我希望这可以工作,但它不会,并且还会返回一个递归的Eloquent\Builder
对象,它会导致我的浏览器崩溃。这是为什么?
答案 0 :(得分:3)
您必须致电get
才能获得结果:
$results = Mission::with('vehicle')->whereHas('vehicle', function($q) {
$q->where('name','Falcon 9 v1.0');
})->get();