0
我想用Rails 4/AR使用Wisper並遇到問題。如何將Wisper與同一個活動記錄模型的不同實例一起使用?
比方說,我有Email
和Creep
AR模型,我想,當接收到一個答覆Creep
知道(Creep
不一定是發送者...)
所以我做的:
email = Email.create! params
creep = Creep.last
email.subscribe(creep, on: :reply_received, with: :success)
如果馬上做:
email.publish :reply_received
它將工作(Creep
實例甲肝e成功的方法)。
但是,如果我以後做:
email = Email.find(id)
或:不播
email = Email.last
事件。我猜這是因爲新的電子郵件是一個不同的實例,因此沒有訂閱的聽衆。我究竟做錯了什麼?
謝謝。我目前正在使用類似後者的建議(訂閱所有電子郵件,併爲每封電子郵件尋找正確的蠕變)。前者的解決方案違反了電子郵件/蠕變代碼的解耦目標(以及韋斯珀在我眼中的巨大優勢之一)。 /如果我們希望同一模型ID的所有實例都被認爲是相同的,那麼您是否看到了爲AR對象訂閱不同工作的好處?也許是一個發佈者類的方法,它允許用戶覆蓋實例在訂閱上存儲/呈現的方式?如果是這樣,我很樂意提供幫助。 – delight
如果你想在Github上打開一個問題的代碼示例,我會很樂意討論這個問題。我以前沒有遇到過這個問題。 – Kris