我使用acts_as_ferret(0.4.3)进行全文搜索,但是当更新索引我需要重新启动时
雪貂,有什么好方法让它自动更新?谢谢!
答案 0 :(得分:2)
我得到了答案
# ferret_index.rake
desc "Updates the ferret index for the application."
task :ferret_index => [ :environment ] do | t |
MyModel.rebuild_index
# here I could add other model index rebuilds
puts "Completed Ferret Index Rebuild"
end
此任务已简化:我告诉它每小时重建整个索引。我猜测当我的数据集变得足够大时,这将非常慢。在这种情况下,我需要跟踪过去一小时内更新的所有模型实例,并将其编入索引。
最后,我需要一个cron作业来运行rake任务,确保将环境设置为“production”:
cd /rails_app && rake ferret_index RAILS_ENV=production