使用TNTSearch驱动程序进行搜索在Homestead环境中工作,但在生产时它会返回错误:以下错误,
Symfony\Component\Debug\Exception\FatalThrowableError: Class 'AlgoliaSearch\Version' not found
vendor/laravel/scout/src/EngineManager.php:31
但是我的.env有SCOUT_DRIVER=tntsearch
,配置文件scout.php有:
'driver' => env('SCOUT_DRIVER', 'tntsearch'),
'tntsearch' => [
'storage' => storage_path(),
'fuzziness' => env('TNTSEARCH_FUZZINESS', false),
'fuzzy' => [
'prefix_length' => 2,
'max_expansions' => 50,
'distance' => 2
],
'asYouType' => false,
'searchBoolean' => env('TNTSEARCH_BOOLEAN', false),
]
问题是我没有使用Algolia搜索,我的作曲家文件有Scout和TNTSearch驱动程序。搜索工作在我当地的Homestead环境中,而不是在生产服务器上。
答案 0 :(得分:0)
我解决了这个问题,我已经上传了我的项目,但由于某种原因,需要同步的.index文件却无效。如果您在现场发生这种情况,请确保您使用Git或SVN或索引或运行php artisan scout:import App\\Your\\Model
答案 1 :(得分:0)
确认SCOUT_DRIVER=tntsearch
已添加到您的.env文件中。
对于我个人而言,我已将SCOUT_DRIVER=tntsearch
添加到我的本地.env文件中,但没有将我的.env文件添加到有此问题的环境中。添加env变量后,不要忘记运行php artisan config:clear
。
感谢@ m33bo为我指出正确的方向!