为什么我的简单 laravel 查询返回递归?
Why is my simple laravel query returning a recursion?
我有两个 Eloquent 模型,它们是一对一的关系:一个 mission
有一个 vehicle
,一个 vehicle
属于一个 [=13] =].
我已经在我的两个模型中建立了如下关系:
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');
});
我希望它能工作,但它没有,此外,returns 一个递归 Eloquent\Builder
对象使我的浏览器崩溃。这是为什么?
您必须调用 get
才能得到结果:
$results = Mission::with('vehicle')->whereHas('vehicle', function($q) {
$q->where('name','Falcon 9 v1.0');
})->get();
我有两个 Eloquent 模型,它们是一对一的关系:一个 mission
有一个 vehicle
,一个 vehicle
属于一个 [=13] =].
我已经在我的两个模型中建立了如下关系:
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');
});
我希望它能工作,但它没有,此外,returns 一个递归 Eloquent\Builder
对象使我的浏览器崩溃。这是为什么?
您必须调用 get
才能得到结果:
$results = Mission::with('vehicle')->whereHas('vehicle', function($q) {
$q->where('name','Falcon 9 v1.0');
})->get();