阅读(28) (12)

Laravel 8 通过查询添加

2021-07-09 14:25:09 更新

如果你想通过 Eloquent 查询构造器将模型集合添加到搜索索引中,你也可以在 Eloquent 查询构造器上链式调用 searchable 方法。searchable 会把构造器的查询 结果分块 并且将记录添加到你的搜索索引里。同样的,如果你已经配置 Scout 为使用队列,则所有的数据块将在后台由你的队列工作进程添加:

// 通过 Eloquent 查询构造器添加...

App\Models\Order::where('price', '>', 100)->searchable();

// 你也可以通过模型关系增加记录...

$user->orders()->searchable();

// 你也可以通过集合增加记录...

$orders->searchable(); 

searchable 方法可以被看做是「更新插入」的操作。换句话说,如果模型记录已经在你的索引里了,它就会被更新。如果搜索索引中不存在,则将其添加到索引中。