40 Stimmen

Wie erhalte ich ein Modell aus einer Backbone.js-Sammlung durch seine Id?

In meiner Anwendung basiert alles, was ich mit Daten mache, auf dem Primärschlüssel, da die Daten in der Datenbank gespeichert sind. Ich möchte ein Modell aus einer Sammlung abrufen, die auf diesem Schlüssel basiert.

Die Verwendung von Collection.at() erfordert den Array-Index, Collection.getByCid() erfordert die Client-ID, die Backbone zufällig generiert.

Was ist der beste Weg, um das gewünschte Modell aus der Sammlung mit dem angegebenen ID-Wert zu holen? Ich denke, das Schlimmste, was ich tun könnte, wäre, über jedes Element zu iterieren, .get('id'), und geben Sie, dass man.

63voto

nikoshr Punkte 32596

Werfen Sie einen Blick auf die get-Methode, vielleicht hilft sie Ihnen weiter :)

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

erhalten. collection.get(id)
Abrufen eines Modells aus einer Sammlung, angegeben durch eine id, eine cid oder durch Übergabe eines Modells.

7voto

Joel Peltonen Punkte 12210

Wenn Sie für Ihre Daten eine andere Art von Schlüssel oder einen Satz verwenden müssen, der sich nicht gut mit at() , getByCid() または get() gibt es auch where() . So etwas könnte funktionieren:

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

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X