我已经安装和配置了meilisearch + Laravel软件包。
我的模型:
class Post extends Model
{
use Searchable;
}当我运行php artisan scout:import 'App\Models\Post'时,它会返回:
Imported [App\Models\Post] models up to ID: 5
All [App\Models\Post] records have been imported.但是当我检查索引时,它是空的。为什么?
正在创建索引,但没有导入数据。meilisearch和Scout包的配置相同,适用于其他一些模型.
发布于 2021-08-27 12:35:19
我自己刚碰到这个问题,碰到了你的问题。我不认为您是在指定索引中应该存储的内容,对吗?
即在您的模型中,您是否创建了如下所示的toSearchableArray方法.
public function toSearchableArray(): array
{
return [
'name' => $this->name,
];
}如果有,那么您的toSearchableArray方法必须返回数组中的主键,否则记录不会被索引。
public function toSearchableArray(): array
{
return [
'id' => $this->getKey(), // this *must* be defined
'name' => $this->name,
];
}发布于 2021-08-04 08:27:54
您可以尝试设置:
SCOUT_QUEUE=false若要检查队列是否有问题,请再次运行导入。
发布于 2021-08-27 14:39:41
对于索引,您可以尝试:
php artisan scout:index posts
您的队列没有其他问题,并再次运行导入。
如果您有SCOUT_QUEUE=true,那么请使用php artisan queue:work --daemon启动您的队列,您的数据将开始导入。
https://stackoverflow.com/questions/68615150
复制相似问题