La prima cosa che si può perdere è che nel modello Tag corrispondente è necessario impostare "urlRoot" in modo che corrisponda all'URL della raccolta. In caso contrario, non conosce la raccolta a tutti:
var Tag = Backbone.Model.extend({
urlRoot: "/api/v1/tags"
});
var Tags = Backbone.Collection.Extend({
model: Tag,
url: "/api/v1/tags"
});
Questo è utile se si desidera salvare il tag separatamente:
var tag = collection.get(2);
tag.set({key: "something"});
tag.save(); // model.save works because you set "urlRoot"
Sulla raccolta, "create()" è anche " update() "se id non è nullo. Non è confuso. :) Quindi, questo è più o meno equivalente al campione precedente:
collection.create({id: 2; key: "something"});
Questo aggiornerà il tag esistente con id = 2 e quindi innescare un PUT.
Questa è una domanda antica; rispondendo perché stavo cercando la stessa risposta - probabilmente hai da tempo risolto questo problema e proseguito. :)
Hai provato 'model.save ({nome: 'nuovo nome'});'? –