我在考慮實現類似以下內容的事情,並希望知道a)如果由於某種原因,我沒有想到可能是一個非常糟糕的主意,並且b)如果沒有 - 有沒有現成的寶石可以做到這一點。Rails - 從控制器觸發JavaScript事件
基本上,我希望能夠從我的rails控制器中排隊javascript事件,以便在下一次渲染時,所有排隊的事件將被觸發並從隊列中移除。而不是像閃光燈機制那樣,而是用於事件。因此,例如爲:
在我的控制器:
def create
if resource.create
add_event('resourceCreated', :id => resource.id)
end
end
,並在我的應用程序佈局是這樣的:
%javascript
- @events.each do |e|
$(document).trigger(#{e.event_name}, #{e.event_data})
有什麼想法?
編輯:這將是有用的,例如,當創建項目時,服務器可以重定向到所述項目的編輯表單,或者可以重定向到相關控制器的索引動作。這些頁面不知道某個項目剛剛創建。但是,也許我想做一些事情,如關閉對話窗口,如果該項目已成功創建,但如果它沒有打開,或者任何其他可能的原因,我可能需要知道它。顯然不只是相關的創建,這只是我用來說明問題的例子
編輯:賞金去誰勸我有說服力的一種方式或其他,這是一個好/壞主意或提供更好的選擇
除了資源創建/更新/刪除之外是否還會有其他事件類型?如果沒有,爲什麼標準的Flash消息不適合? – RocketR