web-dev-qa-db-fra.com

Comment obtenir un modèle d'une collection Backbone.js par son identifiant?

Dans mon application, tout ce que je fais avec les données est basé sur la clé primaire car les données sont stockées dans la base de données. Je voudrais récupérer un modèle d'une collection basée sur cette clé.

L'utilisation de Collection.at () nécessite l'index du tableau, Collection.getByCid () requiert l'ID client généré de manière aléatoire par le backbone.

Quelle est la meilleure façon de récupérer le modèle que je veux dans la collection avec la valeur id donnée? Je pense que le pire que je puisse faire serait d'itérer sur chaque élément, .get ('id'), et de retourner celui-ci.

40
Thomas Hunter II

Jetez un oeil à la méthode get, cela peut être utile :)

http://backbonejs.org/#Collection-get

get collection.get (id)
Obtenez un modèle d'une collection, spécifié par un id, un cid, ou en passant un modèle.

63
nikoshr

Si vos données vous obligent à utiliser un autre type de clé ou un ensemble qui ne correspond pas bien à at(), getByCid() ou get(), il y a aussi where(). Quelque chose comme ça pourrait fonctionner:

window.lib = new Library;
window.lib.fetch([
    success: function(model, response) {
        console.log(window.lib.where({'BookID':488, 'Rev':2, 'Status':'Active'});
    }
});
7
Nenotlep