gpt4 book ai didi

php - Laravel Scout & TNTSearch 如何结合关系型数据库使用?

转载 作者:搜寻专家 更新时间:2023-10-31 21:00:35 25 4
gpt4 key购买 nike

假设我有一个表“users”,我想用 Laravel Scout 搜索它。它有很多属性,其中包括用户的爱好。

  • 用户的爱好不直接放在users表中,
    但是通过关系表。因此,为每个用户放置一个 hobby-idusers 表。

  • 现在,当我搜索football 时,Laravel 并未为其编制索引
    侦察。只有爱好 football 的 id 被索引,但那是当然不是我想要的。

有谁知道我如何才能确保搜索football 会返回爱好足球的用户?

感谢您的宝贵时间!

最佳答案

您可以完全控制通过 toSearchableArray() 索引的内容这样你就可以按照

class User extends Model
{
use Searchable;

// ...

public function toSearchableArray()
{
return array_merge($this->toArray(), [
'hobby' => $this->hobby === null ? '' : $this->hobby->name;
]);
}

// ...

public function hobby()
{
return $this->belongsTo(Hobby::class);
}

}

关于php - Laravel Scout & TNTSearch 如何结合关系型数据库使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43851679/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com