在Laravel中,当我直接用数据库更新内容时,我怎样才能保持搜索索引有正确的数据更新?

问题描述:

我正在为我的网站设置搜索功能 nurserypeople.com我使用Directus CMS来管理和更新内容, 而网站的用户将与建立在Laravel上的网络应用进行交互.

我将使用Laravel Scout来做搜索索引, 我相信还有Algolia搜索api. 由于我将通过Directus进行更新, Directus直接在数据库中进行编辑, 而不是通过Laravel(使用save()方法), 我担心当我自己编辑和修改内容时, 我的搜索索引不会被Laravel Scout更新.

有什么方法可以保证内容会被正确的索引, 比如每周每天更新一次, 这样我就不用每次更新内容时都要通过命令行手动更新索引了?

谢谢你!我正在努力设置搜索功能,比如说每周每日,这样我就不用在每次更新内容时通过命令行手动更新索引了。

解决方法:

好了,我找到了自己问题的答案。

为了定期更新球探索引,你需要在App\Commands\Kernel.php中添加一个时间表,让命令每天、每周或任何时候运行。

在我的例子中。我打算每周运行一次scout:import,在Kernel中是这样的。

protected function schedule(Schedule $schedule)
{
    $schedule->command('scout:import')->weekly();
}

希望这能帮到你

未经允许不得转载:芯片验证自学网-IC设计入门自学网站 » 在Laravel中,当我直接用数据库更新内容时,我怎样才能保持搜索索引有正确的数据更新?

赞 (0) 打赏

觉得文章有用就打赏一下文章作者

微信扫一扫打赏