使用TNTSearch驱动程序时,Laravel Scout生成错误

时间:2017-08-08 11:15:51

标签: php laravel laravel-5.4 laravel-scout

使用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环境中,而不是在生产服务器上。

2 个答案:

答案 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为我指出正确的方向!