首页 > 解决方案 > PHP - Laravel - Scout:外部管理数据库表(模型)的自动索引

问题描述

是否有可能使用 Laravel Scout自动索引外部管理的数据库表。

例如,我在 Laravel 的外部数据库表上使用模型。属性将从子系统更改。之后 Laravel Scout 应该会自动自动索引新数据。它可能会检查在最后一次索引之后哪些条目在 update_at 或 created_at 处,并为新数据建立索引。

也许已经存在任何解决方案。

谢谢。

标签: laravelindexinglaravel-scout

解决方案


由于您的表位于外部数据库中,因此我假设它是只读的。运行php artisan scout:import "App\Model"只会重新索引整个表。

我有一个类似的问题。记录将从外部进程插入到表中。由于我使用的是 laravel-scout-postgres 包,我的表有一个名为 searchable 的列。如果它为空,那么我知道它没有被索引。在php artisan tinker我可以运行类似的东西$test = App\Models\MyModel::whereNull('searchable')->searchable();来索引这些记录。我想我最终将不得不编写一个任务/工作来为新记录建立索引。也许您可以识别表中的最近记录并以类似的方式将它们编入索引?


推荐阅读