我正在尝试使用Laravel Nova实现基本的过滤器。过滤器查看字段“ onboarded_at”,它是一个日期时间字段。如果该属性具有时间戳,则说明该属性已加入,如果没有,则没有该属性。
这是我的过滤器:
public function apply(Request $request, $query, $value)
{
return $query->where('onboarded_at', $value);
}
public function options(Request $request)
{
return [
'Onboarded' => !NULL, // How would I indicate a non-null value here?
'Not Onboarded' => NULL,
];
}
如何在选项函数中指示非空值?
答案 0 :(得分:1)
使用$value
参数根据需要修改查询:
public function apply(Request $request, $query, $value)
{
if($value) {
return $query->whewhereNotNull('onboarded_at');
}
return $query->whereNull('onboarded_at');
}
public function options(Request $request)
{
return [
'Onboarded' => 1,
'Not Onboarded' => 0,
];
}