2011-04-30 15 views

Respuesta

13

dos opciones:

Model.suspended_delta do 
    # all actions in the block don't fire a delta request 
end 
# A single delta request gets fired at the end 

O, lo que puede ser mejor en su situación:

ThinkingSphinx.deltas_enabled = false 

y la puso de nuevo a true cuando haya terminado.

+0

excelente! gracias. –

+2

FYI: Esto es para versiones anteriores de ts. Vea a continuación la respuesta para las versiones más recientes. – troelskn

8

Para pensar v3 esfinge, puede suspender los deltas de esta manera (es obsoleta a la antigua):

ThinkingSphinx::Deltas.suspend(:index_reference) do 
    # Do something 
end 

Así que si tengo un modelo llamado Job con un índice llamado: trabajo, que se vería esto:

ThinkingSphinx::Deltas.suspend(:job) do 
    # Do Something 
end 
+1

Y también están los métodos 'ThinkingSphinx :: Deltas.suspend!' Y 'ThinkingSphinx :: Deltas.resume!' Si desea controlar las cosas en un nivel más fino, pero esto no ejecutará automáticamente la indexación delta para ningún modelo después. – pat

Cuestiones relacionadas