模型

class Model1 extends Eloquent {
    public function model2() {
        return $this->hasOne('Model2');
    }
}

class Model2 extends Eloquent {
    public function model1() {
        return $this->belongsTo('Model1');
    }
}

我想要的查询
我想从Model1获取所有没有Model2的实例。换言之,在Model1表列id中没有任何引用。
这可以通过Model2循环来实现,迭代所有model1_id并检查foreachatributte是否为空。但我想用雄辩的问句。

最佳答案

你可以试试

Model1::has('model2', '=', 0)->get();

见:Laravel Docs - Eloquent - Querying Relations
更新:
Model1::doesntHave('model2')->get();

08-28 00:37