私はThinkingSphinxのデルタベースのインデックスをリアルタイムのものに変換しようとしています。サンウ、ThinkingSphinxリアルタイムインデックスを使ってレコードを破棄する場合
after_save ThinkingSphinx::RealTime.callback_for(:location)
レコードを追加して更新するだけで正常に動作:ドキュメントごとに、私はこのコールバックを追加しました。私の問題は、Railsドキュメントによれば、after_save
コールバックを引き起こさないレコードを削除することです。私はこれを私のスフィンクスインデックスから削除されないレコードを削除することで確認しました。
私は
after_destroy ThinkingSphinx::RealTime.callback_for(:location)
を試してみました。しかし、これは(リアルタイムのコールバックがafter_destroy
をサポートしていないとして)エラーが発生します。
リアルタイムインデックスを使用しているときにインデックスからエントリを削除するにはどうすればよいですか?スフィンクスを考える
(thinking-sphinx 3.3.0
、rails 5.0.4
、それは場合に役立ちます)
ありがとうございます(このタグを監視していただきありがとうございます)。 'after_save'コールバックが必要ですか、それとも自動的に追加されますか? –
after_saveは自動的に呼び出されないため、コード内に保持する必要があります。おそらく、私がもう一度時間を過ごせば、after_destroyも(アプリのコードを無謀に侵入するよりも明示的なルートを取っている)どちらでもないだろう。 – pat
ドックには私が取り組むことができるレポがあるようには見えませんが、ドキュメント内のメモでさえ遠くになってしまいます。私の開発ログは、私が破壊を行うと、特にSphinxのクエリを表示しません。 –