trinityrank / search
搜索您的网站
v1.3.3
2022-12-20 13:27 UTC
Requires
- php: ^7.4|^8.0
- meilisearch/meilisearch-php: 0.24.1
README
此包管理搜索所需的所有数据
- 导入
- 更新
- 删除)
- 在前端检索数据
如果您使用我们的包,我们支持多语言和短代码
安装
- 后端
步骤 1: 安装包
要开始使用 Laravel Search,请使用 Composer 命令将包添加到 composer.json 项目依赖项中
composer require trinityrank/search
步骤 2: 命名空间
- 在每项租户配置中添加这些命名空间以包括搜索中的帖子/页面/类别
...
// Include for search (articles, pages, categories...)
'search' => [
'App\\\Categories\\\Types\\\BlogCategory',
'App\\\Categories\\\Types\\\NewsCategory',
'App\\\Categories\\\Types\\\MoneyPageCategory',
'App\\\Categories\\\Types\\\ReviewPageCategory',
'App\\\Categories\\\Types\\\DealPageCategory',
'App\\\Articles\\\Types\\\Blog',
'App\\\Articles\\\Types\\\News',
'App\\\Pages\\\Types\\\MoneyPage',
'App\\\Pages\\\Types\\\ReviewPage',
'App\\\Pages\\\Types\\\DealPage',
],
...
步骤 3: 添加 .env 参数
- 将这些变量中的 host 和密钥放入这些变量中
SCOUT_QUEUE=false
SCOUT_DRIVER=meilisearch
MEILISEARCH_HOST=http://127.0.0.1:7700/
MEILISEARCH_KEY=null
步骤 4: 更新配置
- 在 config/scout.php 的末尾添加此内容(如果已存在,则忽略此步骤)
...
'meilisearch' => [
'host' => env('MEILISEARCH_HOST', 'https://:7700'),
'key' => env('MEILISEARCH_KEY', null),
],
...
步骤 5: 数据库
- 您需要从包中发布迁移文件
php artisan vendor:publish --provider="Trinityrank\Search\SearchServiceProvider" --tag="search-migration"
然后您需要为所有租户运行迁移
php artisan tenant:artisan "migrate"
或仅为一个特定的租户
php artisan tenant:artisan "migrate" --tenant=[--TENANT-ID--]
步骤 7: 导入搜索数据
- 首先删除所有现有数据以及旧索引,然后进行新鲜数据导入并更新过滤器
// delete
php artisan search:delete
php artisan search:delete-index
// import
php artisan search:import
// update
php artisan search:update-filters
- 前端
步骤 1: 安装包
安装这两个包 - trinityrank/search-multitenancy: 最新版本 - meilisearch/meilisearch-php: ^0.24.1 或最新版本
composer require meilisearch/meilisearch-php
composer require trinityrank/search-multitenancy
步骤 2: 添加 .env 参数
将 host 和 密钥 放入这些变量中
MEILISEARCH_HOST=http://127.0.0.1:7700/
MEILISEARCH_KEY=null
步骤 3: 发布
- 您需要发布包中的文件(配置和 js 文件)
php artisan vendor:publish --provider="Trinityrank\Search\SearchServiceProvider" --tag="search-config"
步骤 4: JS
- 在您的 js 混合中包含编译的 JS 文件
...
.copy(
'vendor/trinityrank/search/src/public/js/search.js',
'public/js'
)
...
- 然后执行
npm run dev
-
在您的 Blade 文件中添加此指令以包含 JavaScript
- 如果您将其添加到组件中,请添加此代码部分
@once @push('your-stack-name') @searchJs @endpush @endonce- 如果您将其添加到布局中,可以像这样添加
@searchJs