if($city!='Others'){
$posts = Post::orderby('id','desc')->where(['city'=>$city])->paginate(10);
}
else{
$posts = Post::orderby('id','desc')->whereNotIn(['city'=>'Lahore'])->paginate(10);
}
}
我现在要显示一些特定的数据 以前显示的数据以外的数据。
首先,如果显示正常数据,我试图在else部分显示剩余数据。
答案 0 :(得分:1)
var maxDate = new Date();
var pastYear = maxDate.getFullYear() - 1;
maxDate.setFullYear(pastYear);
maxDate.setMonth(11);
maxDate.setDate(31);
$('#drivers-dob').datepicker({
autoclose: true,
//endDate: '+0d',
endDate: maxDate,
format: "yyyy-mm-dd",
});
将获取WhereNotIn
的值您还需要在其中传递列名称
array
答案 1 :(得分:0)
这是基于数据库设置方式的猜测。
根据回复编辑(请参阅:https://laravel.com/docs/5.5/queries#where-clauses和Laravel != operator in where not working):
if($company!='Others'){
$posts = Post::orderby('id','desc')->where(['company'=>$company])->paginate(10);
}
else{
$posts = Post::orderby('id','desc')->where('city', '<>', 'Lahore')->paginate(10);
}
这有帮助吗(看一下链接)?
答案 2 :(得分:0)
感谢您的帮助。唯一需要的是将whereNotIn语句值保留在数组中。像这样。
if($city!='Others'){
$posts = Post::orderby('id','desc')->where(['city'=>$city])->paginate(10);
}
else{
$posts = Post::orderby('id','desc')->whereNotIn(['city',array('Lahore')->paginate(10);
}
}