mysql - 如何在 Laravel Eloquent 中处理空值?
问题描述
我是 laravel 的新手。实际上我想过滤一些关于 state 和 typeofsupply 列的数据。就像如果 state="south australia" 和 typeofsupply="Inverter & Storage" 然后向我显示这两个值上都存在的这些行。如果我像 state="south australia" 和 typeofsupply=Nul 进行过滤。那么这些行将显示谁南澳大利亚的存在状态和供应类型应该是列表中的任何一个(所有类型的供应)
public function show(Request $request){
$typeofsupply='';
$state='';
if(!$request->all()==Null) {
if(!$request->state==Null) {
$state=$request->state;
}
if(!$request->typeofsupply==Null) {
$typeofsupply=$request->typeofsupply;
}
$items = Postjob::where('state',$state)
->where('typeofsupply',$typeofsupply)
->get();
dd($items);
解决方案
这就是我解决问题的方法......
$items = Postjob::when($state!=Null,function ($query) use ($state) {
return $query->where('state', $state);})->
when($typeofsupply!=Null,function ($query) use ($typeofsupply) {
return $query->where('typeofsupply', $typeofsupply);})->get();
推荐阅读
- javascript - 如何在没有捆绑器的情况下在 Nw.js 项目中使用 Vue.js?
- ios - 无法在 Xcode Objective-c 中将按钮连接到 wkwebview
- c - 使用 NULL 指针初始化数组并引发 GCC 抛出错误
- amazon-web-services - Lambda 中对 ApiGateway 的请求导致无法满足请求
- javascript - iFrame 变为空
- java - 如何使用 OjAlgo 在 OperateOnAll 上使用 abs、sqrt 等?
- java - 在另一个 Activity 中使用 RecyclerViewAdapter 的 ArrayList
- javascript - 使用方法作为过滤器的回调函数会影响回调的范围
- javascript - 否定墨卡托投影
- angular - 在 Angular 中以 Angular 反应形式创建表格