问题标签 [laravel-scout]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
laravel-5.3 - Laravel Scout Where 子句没有按预期工作
我正在使用 Laravel Scout 和 TNTSearch 实现全文搜索。一切都很好,因为我的 where 子句在搜索结果中无效。
上面的代码应该返回 school_id 为 4 的广告的搜索结果,但事实并非如此。相反,它会返回匹配搜索查询的广告的结果,而不考虑 where 子句。
是我错过了什么还是什么?
laravel - Laravel Scout and TNTSearch search withTrashed
I've configured Laravel Scout and can use ::search()
on my models.
The same models also use SoftDeletes.
How can I combine the ::search()
with withTrashed()
?
The code below does not work.
The below does work but does not include the trashed items.
Update 1 I found in the scout/ModelObserver that deleted items are made unsearchable. Which is a bummer; I wanted my users to be able to search through their trash.
Update 2
I tried using ::withoutSyncingToSearch,
as suggested by @camelCase, which I had high hopes for, but this also didn't work.
This caused an undefined offset when searching for a deleted item. By the way, I'm using the TNTSearch driver for Laravel Scout. I don't know if this is an error with TNTSearch or with Laravel Scout.
laravel - 带有 AWS ElasticSearch 的 Laravel Scout 添加了基本身份验证标头
所以我在 5.3 应用程序中使用 Laravel Scout 连接到 AWS ElasticSearch。一切都已连接,除非当我尝试连接到 ElasticSearch 时,即使我指定了 IAM 凭证,也会添加额外的 Basic Auth 标头。具体来说,错误是:[Elasticsearch\Common\Exceptions\Forbidden403Exception]
{"message":"'NzA3OTQxMjg4NDc4OkFLSUFJV1gzNUhDMzIyTVczUVpB' not a valid key=value pair (missing equal-sign) in Authorization header: 'Basic NzA3OTQxMjg4NDc4OkFLSUFJV1gzNUhDMzIyTVczUVpB'."}
附带说明一下,我不得不降级到 Laravel Scout 1.1.12,因为 2.0 版找不到弹性搜索驱动程序,看来 Taylor 正在处理这个问题。但是,我的 elasticsearch/elasticsearch 包是 ^5.0。
elasticsearch - 带有弹性搜索的 Laravel Scout 不起作用
我试过了
将弹性搜索与 Laravel scout 与包一起使用
在 localhost:9200 中运行 Elasticsearch 服务器并创建索引并提供必要的配置,
为模型添加了可搜索的特征,
并将数据导入索引
但是当我进行搜索时,它返回一个空数组
当我卷曲时,它也会显示,
当我在 ES 中添加没有索引的记录时,模型会抛出类似index not found
. 但是在添加数据和所有之后,它似乎是空的。我错过了什么吗?
与 algolia 完全一样。
php - 如果环境不是生产,你将如何跳过 Laravel Scout?
我有一个正在用 Laravel 编写的应用程序。我对这个框架还很陌生,而且大部分内容都不了解。我使用 Algolia 作为 Laravel 的 Scout 的搜索引擎。在你添加的模型use Searchable
中,一个特征,并且记录会自动传递给 Algolia,这很酷。我试图发表一个简单的声明if (App::environment('local'))" exit scout
,这样我们就不会将我们的开发数据发送到 Algolia。如果我用完 Algolia 的 10,000 条记录的黑客级别,Scout 也会抛出异常。
laravel - 使用参数执行 Artisan 命令
目前我面临以下问题:
我想在我的数据库更新后自动更新我的搜索索引。我在 AppServiceProvider 的表上注册了一个 saved() 监听器:
在闭包中,我尝试调用 Artisan 命令 (scout:import),将 App\\Customer 传递给命令。我试过了
我没有找到将所需参数放在官方文档中的位置的信息。
我确信它很简单(就像 laravel 中的所有东西一样),但我无法完成它......
laravel-5.3 - Laravel Scout & Algolia - 从 TNTSearch 迁移到 Algolia 后无法在登台服务器上创建索引
这很奇怪。我已经在本地服务器上成功创建了一个索引,它出现在 Algolia dashbord 中。
但是,当我php artisan scout:import 'App\MyModel'
在登台服务器上运行时,我得到:
但该索引未显示在 Algolia 仪表板中。
我比较了我的.env
文件,这些字段在我的两个应用程序上都是相同的:
我的config/scout.php
这是我的config/algolia.php
任何帮助表示赞赏。谢谢!
更新
当我运行时,文件夹my_models.index
中的索引文件似乎得到了更新storage
php artisan scout:import 'App\MyModel'
我相信这是在 Algolia 之前使用 TNTSearch 的遗留问题,但我无法弄清楚为什么我的应用程序在我的登台服务器上使用 TNTSearch 而不是 Algolia 应用程序。
我得出这个结论是因为当我运行php artisan scout:import 'App\MyModel'
这个索引文件时,我的登台服务器上而不是我的本地机器上得到了更新。
更新#2
ssh 进入服务器,如果php artisan tinker
我algolia
运行env('SCOUT_DRIVER')
或者config('scout.driver')
.
更新#3
尝试了php artisan config:clear
,但在我的模型上运行后cache:clear
我仍然得到新my_model.index
文件。scout:import
即使在我从.env
,composer.json
和中删除了所有提及 TNT 之后AppServiceProvider.php
。
php - Laravel Scout 没有找到任何记录
我正在使用搜索栏表单,它在 +-175.000 模型的数据库中进行搜索。我已经根据文档安装了 Scout,并使用scout:import
.
现在,我在控制器中设置了一个函数来进行搜索并返回所有记录,但无论我搜索什么,记录总是空的。
网页.php:
ActController@searchAct:
表格:
据我所知,这应该可行,但dd($actes)
说该集合是空的。我已经use Searchable;
在我的模型中包含了 Entrait。Scout index the records fine: 所有[App\Act]
记录都已导入。
php - Laravel 5 侦察兵
我还在学习 php 和 Laravel 框架。我无法让这段代码在我的控制器中工作,而是将它们放在我的视图中,但这不是我想要的。我想要控制器中的所有逻辑,但我无法弄清楚如何做到这一点。
laravel - Laravel Scout 与 TNTSearch 驱动过滤 where 子句
我尝试where
使用 TNTSearch 在查询中使用子句获取搜索查询的结果,但它不起作用。查询没有得到where
子句。
控制器
有人对如何获取过滤器查询有任何想法吗?