Вопрос

Я использую ECTS_AS_FERRET (0.4.3), чтобы выполнить поиск в полный текст, но при обновлении индекса мне нужно перезапустить

Ferret, так есть ли хороший метод, чтобы сделать его обновление автоматического? Спасибо!

Это было полезно?

Решение

Я получил ответ

# 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, чтобы запустить эту задачу грабли, уверена, что настроить окружающую среду для «производства»:

cd /rails_app && rake ferret_index RAILS_ENV=production 
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top