我有一个订单模型,希望能够创建两个搜索。
我希望这是一件简单的事情,但似乎并非如此!
在我的订单表中,我有一个completed_at字段,该字段在完成时提供日期,在不提供时提供空值。内置的Order::Search->where()
方法不允许您提供比较器,也不能采用null ...因此这是行不通的!
我想为模型创建多个索引,然后使用->within('open_orders')
函数来搜索正确的索引。看来它可以提供很大的灵活性,但我也看不到实现此目的的方法。
模型中类似的东西会很棒(但不起作用)
public function searchableAs()
{
if($this->isOpen()){
return 'open_orders_index';
} else {
return 'complete_orders_index';
}
}
有人可以建议任何解决方法来预过滤搜索查询吗?