我正在尝试将ThinkingSphinx中基于delta的索引转换为实时索引。根据文档,我添加了这个回调:
after_save ThinkingSphinx::RealTime.callback_for(:location)
这适用于添加和更新记录,哇。我的问题是删除记录,根据Rails文档,不会触发after_save
回调。我已经通过删除记录来确认这一点,该记录不会从我的sphinx索引中删除。
我试过
after_destroy ThinkingSphinx::RealTime.callback_for(:location)
但这会引发错误(因为实时回调不支持after_destroy
)。
如何在使用实时索引时从索引中删除条目?
(thinking-sphinx 3.3.0
,rails 5.0.4
,如果有帮助的话)
答案 0 :(得分:1)
思考Sphinx会自动将自己的after_destroy
回调添加到所有索引模型中,因此无需添加任何代码即可从实时索引中删除这些记录。