2011-04-30 26 views

回答

13

兩個選項:

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 

或者,什麼可能是您的情況更好:

ThinkingSphinx.deltas_enabled = false 

,並將其設置回true時,即可大功告成。

+0

優秀!謝謝。 – 2011-05-03 10:21:46

+2

供參考:這是ts的舊版本。請參閱下面的答案以獲得更新版本。 – troelskn 2014-04-22 09:26:50

8

對於想獅身人面像V3,你可以暫停三角洲這樣(舊方法已經過時):

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

所以,如果我有一個名爲招聘名爲索引模式:工作,它會是什麼樣子這個:

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

如果你想以更精細的水平控制事物,也可以使用'ThinkingSphinx :: Deltas.suspend!'和'ThinkingSphinx :: Deltas.resume!'方法 - 但這不會自動爲任何模型運行增量索引。 – pat 2013-08-04 00:55:29