2012-05-10 16 views
0

私がBackbone-Relationalに変更した後、私のモデルがdestroy()を呼び出すと動作しなくなりました。サーバ上で成功を取り除くときに、それで、私のモデルはPUT(更新)を要求しません - サーバー側にレコードが見つかりません。サーバモデルを破壊すると、IDがnullに更新されない

のCoffeeScriptおそらくバックボーンリレーショナルから側

save: ->   
    if isBlank @model.get("text") 
     @model.destroy() # after success it still with same attributes including id!! 
    else 
     @model.save() 

レール側

def destroy 
    @note = Note.find(params[:id]) 
    @note.destroy   
    respond_with @note # callback is empty 
end 

バグ? Backbone.jsは破壊後にIDを更新しますか?

答えて

0

バックボーンは、破壊時にモデルを変更するようには見えません。それがコレクションから削除されている場合は除きます。

Check the code

それはあなたが簡単にこのイベントを聞いて、あなたは破壊で正しい行動だと思うものは何でもできるイベントdestroyをトリガされないもの:

// code simplified and no tested 
var MyModel = Backbone.Model.extend({ 
    initialize: function(){ 
    this.on("destroy", this.afterDestroy, this); 
    }, 

    afterDestroy: function(){ 
    this.set("id", null); 
    } 
}); 
+0

感謝の男を、私はなぜちょうど興味がありましたbackbone.jsは成功した後にあなたのIDを消去しませんdestroy()とにかく/ – mateusmaso

関連する問題