我正在使用Rails + Backbone + Faye來製作示例聊天應用程序。Rails + Backbone + Faye消息傳遞,如何實例化模型並從DOM中爲所有訂戶移除其元素?
我目前能夠使用Faye的消息傳遞功能在創建事件中寫入DOM,但我實際上沒有實例化骨幹模型。阿拉Ryan Bates的教程中,我只是裏面的
create.js.erb
<% broadcast "/messages/new" do %>
$("#chats-table").append("<%= escape_javascript render :partial => "chat", :locals => { :chat => @chat } %>");
<% end %>
調用而在另一個JavaScript出版它:
faye.subscribe("/messages/new", function(data) {
eval(data);
});
我想重構這個並利用主幹模型。一個好的用例就是刪除方法。
我的聊天模式勢必將點擊事件,刪除的呼叫:
model.destroy();
this.remove();
骨幹將調用刪除方法,並把刪除請求/實體/ ID
這也分派軌/views/delete.js.erb」。 在那裏我調用了一個輔助方法,它用Ruby代碼發佈消息。
<% broadcast "/messages/delete" do %>
<%= @chat.to_json.html_safe; %>
<% end %>
聽衆
var faye = new Faye.Client('http://0.0.0.0:9292/faye');
faye.subscribe("/messages/delete", function(data) {
});
在這裏,我想知道如果我可以實例被刪除的骨幹機型不知何故,所以我可以說事件推到每個人的屏幕,從DOM中刪除。基本上,我想調用this.remove();在faye客戶端而不是在聊天模式中。這甚至有可能嗎?
謝謝。是的,這就是我必須做的。我傳遞了物品的ID並從集合中獲取了模型,並使用其模型將其從DOM中移除 – jdkealy