比方說,我們有兩種型號:ActiveRecord回調或MySql觸發器?
class Message < ActiveRecord::Base
belongs_to :user
has_many :statistics
end
class Statistic < ActiveRecord::Base
belongs_to :user
belongs_to :messages
end
的Message
有:state
屬性,它基於Statistic
數進行更新(胃內delivered_at,read_at)。一旦消息傳遞給組中的每個用戶,意味着狀態必須相應更新。
Statistics
使用不調用回調(update_all)的查詢在sidekiq作業中更新時間戳,因此無法掛入統計信息的'after_update'回調並更新Message.state
。
我試過在統計表上更新觸發器後使用MySql來做到這一點,但沒有運氣,因爲調用觸發器的查詢在連接中有目標表(消息)。
請指教。
希望我很清楚。
謝謝。
謝謝!我認爲sidekiq回調只在專業版中。 – Anton