“Comment” pour enregistrer l'intégralité de la collection en Backbone.js - Dorsale.sync ou jQuery.ajax?

Je suis bien conscient qu'il peut être fait et j'ai regardé un peu partout (y compris: Les meilleures pratiques pour la sauvegarde d'un ensemble de la collection?). Mais je ne suis toujours pas clair "exactement comment" est-il écrit dans le code? (le post, il explique en anglais. Ce serait génial d'avoir un javascript spécifique explication 🙂

Dire que j'ai une collection de modèles - les modèles eux-mêmes peuvent avoir les collections imbriquées. J'ai remplacé la méthode toJSON() de la collection parent et j'en suis JSON valide de l'objet. Je souhaite à "sauver" l'ensemble de la collection (correspondant JSON), mais épine dorsale ne semblent pas venir dans-construit avec cette fonctionnalité.

var MyCollection = Backbone.Collection.extend({
model:MyModel,

//something to save?
save: function() {
   //what to write here?
 }

});

Je sais quelque chose que vous avez à dire:

Backbone.sync = function(method, model, options){
/*
 * What goes in here?? If at all anything needs to be done?
 * Where to declare this in the program? And how is it called?
 */
}

Une fois que l'affichage se fait avec le traitement, il est responsable de raconter de la collection "enregistrer" sur le serveur (capable de gérer un volume de mise à jour/créer de la demande).

Questions qui se posent:

  1. Comment/quoi écrire dans le code de fil "tous ensemble"?
  2. Qu'est-ce que le "droit" de l'emplacement des rappels et de la façon de spécifier un "succès/erreur" de rappel? Je veux dire du point de vue syntaxique?Je ne suis pas sûr de la syntaxe de l'enregistrement des rappels de la colonne vertébrale...

Si c'est en effet un délicat travail alors que l'on peut appeler jQuery.ajax dans une vue et de passer le this.successMethod ou this.errorMethod que de succès ou d'erreur de rappels?? Ça va fonctionner?

J'ai besoin d'obtenir la synchronisation avec l'épine dorsale de la façon de penser, je sais que je ne suis certainement raté quelque chose.w.r.t., la synchronisation de l'ensemble des collections.

  • Votre code côté serveur prendre cela comme une seule demande? En d'autres termes, l'ensemble de haut niveau de la collecte, tous les modèles, et les collections imbriquées comme un seul JSON paquet? Ou, avez-vous besoin d'enregistrer chaque modèle individuellement? Edit: Ah, lire de plus près, le serveur EST capable de "vrac création/mise à jour"
  • Yup! Avait fait explicite, car, en général, d'un point de préoccupation, mais pas dans ce cas 🙂
  • Alors, quelle est la structure de données que le serveur s'attend à recevoir?
  • La structure de la matière de données? Le formatage n'est pas possible dans un commentaire, mais c'est comme ça: [{postId: 1, les étiquettes:[{id:1,nom:"a"},{id:2,nom:"b"}]}] Fondamentalement, chaque "postId" peut avoir un jeu/tableau de labels qui sont eux-mêmes des objets. Il peut y avoir beaucoup de ces messages...je ne pense pas que le format de données a eu quelque chose à voir avec la question à portée de main, à moins que je me manque quelque chose
  • Voir aussi stackoverflow.com/questions/7975316/...
InformationsquelleAutor PhD | 2011-07-29