我想选择所有在日期和时间可用的材料,使用外键,如类别,子类别和本地人,其他东西,我必须得到没有关系/枢轴的材料
这是我的QUERY:
$material = Material::with(['orders_material','locals'])
->whereDoesntHave('orders_material',function ($query) use ($userOrder) {
$query->where('Material_id', null);
})
->where('Categoria_id', $idcategory)
->where('SubCategoria_id', $idsubcategory)
->where('requisitado', '0')
->where('estado', '1')
->paginate(4);
我有枢轴关系,我在json数据中没有那个我需要的结果。
如何解决这个问题?
答案 0 :(得分:3)
where('x', null)
生成where x = null
,这是一个常见的错误。
始终将null
与is
比较为where x is null
。
雄辩的方式是:
->whereDoesntHave('orders_material',function ($query) use ($userOrder) {
$query->whereNull('Material_id');
})
答案 1 :(得分:0)
您应该在模型中声明关系,然后根据需要调用模型函数,而不是编写子查询。这种方式雄辩将为您提供模型中提到的正确枢轴关系的结果。您能分享一下模型关系的一些细节吗?