これは非常に奇妙です。私は自分のローカルサーバー上にインデックスを作成しました。それはAlgolia dashbordに現れました。Laravel Scout&Algolia - TNTSearchからAlgoliaに移行した後にステージングサーバーでインデックスを作成できません
しかし、私は私が得る私のステージングサーバー上php artisan scout:import 'App\MyModel'
を実行したとき:
Imported [App\MyModel] models up to ID: 22
All [App\MyModel] records have been imported.
が、インデックスはAlgoliaのダッシュボードに表示されません。私は私の.env
ファイルとこれらのフィールドを比較しました
は、私のアプリケーションの両方で同じである:
SCOUT_DRIVER=algolia
SCOUT_PREFIX=staging_ //this one is "development_" on my local server
ALGOLIA_APP_ID=aaaaa
ALGOLIA_MONITORING_KEY=bbbbb
ALGOLIA_SEARCH=ccccc
ALGOLIA_SECRET=ddddd
私config/scout.php
'driver' => env('SCOUT_DRIVER', 'algolia'),
'prefix' => env('SCOUT_PREFIX', ''),
'queue' => true,
'algolia' => [
'id' => env('ALGOLIA_APP_ID', ''),
'secret' => env('ALGOLIA_SECRET', ''),
],
、ここでは私のconfig/algolia.php
'default' => 'main',
'connections' => [
'main' => [
'id' => env('ALGOLIA_APP_ID'),
'key' => env('ALGOLIA_SECRET'),
],
'alternative' => [
'id' => 'your-application-id',
'key' => 'your-api-key',
],
],
です
助けていただければ幸いです。ありがとう!
UPDATE
私がphp artisan scout:import 'App\MyModel'
を実行したときにstorage
フォルダが更新されるのインデックスファイルmy_models.index
が、私はこれがAlgolia前TNTSearchを使用してから残っていると信じていますが、私は理由を把握することはできませんようです私のアプリケーションはTNTSearchを使用しており、Algoliaは私のステージングサーバにはありません。 このインデックスファイルは、ステージングサーバーでは更新されますが、ローカルマシンでは更新されないため、この結論に達しました。
UPDATE#2
SSHサーバーへの私はenv('SCOUT_DRIVER')
またはconfig('scout.driver')
を実行する場合、php artisan tinker
の内側に私はalgolia
を取得します。
UPDATE#3
はphp artisan config:clear
とcache:clear
を試みたが、私は私のモデルにscout:import
を実行した後、私はまだ新しいmy_model.index
ファイルを取得します。 .env
、composer.json
、AppServiceProvider.php
からTNTのすべての言及を削除した後も。
これはちょっとした状況ですが、おそらく最も良い行動措置です:質問に「[解決済み]」はありません。回答があり、問題は実際には再現できません。しかし、この全部はまだ将来的に誰かを助けるかもしれません...私はあなたの "答え"を元に戻すことができますので、それを受け入れることができます。これであなたの答えを受け入れることができます。 – deceze
私はこれが愚かな間違いのように聞こえるが、私のサーバー上には何かが間違っていると思う(たぶん機能でバグではない)。私はこれを削除すべきだとは思わない。私はそれを理解しようとする一日を失い、絶望からサーバを再始動させただけです。これはWindows XPではないし、新しいPHPライブラリをインストールした後にサーバを再起動することは、あなたがやるべきことではありません。正しいことはなぜ起こったのかを知ることですが、悲しいことに私はそれを行う時間も専門知識もありません。 – dbr
あなたがこの答えをもっと深いところに広げることができれば、それは解決策としては価値のある問題だと私は認めます。このように...「再起動」は、デフォルトのトラブルシューティング手順の1つである必要があります。とにかく、この質問は削除されません、それはそれ以上の通知まで閉じたままになります。 – deceze