Domanda

Sto usando acts_as_ferret (0.4.3) per fare la ricerca full-text, ma quando l'indice di aggiornamento ho bisogno di riavvio

Ferret, quindi c'è qualche buon metodo per rendere l'aggiornamento automatico? grazie!

È stato utile?

Soluzione

ho avuto la risposta

# 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 

Questo compito è semplificato: Ti sto dicendo che per ricostruire l'intero indice ogni ora. Sto indovinando quando il mio set di dati diventa abbastanza grande, questo sarà molto lento. In tal caso, avrò bisogno di tenere traccia di tutte le istanze del modello che ha ottenuto aggiornati in passato un'ora e proprio indice di quelli.

Infine, ho bisogno di un lavoro cron per eseguire l'attività rastrello, avendo cura di impostare l'ambiente di "produzione":

cd /rails_app && rake ferret_index RAILS_ENV=production 
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top