Meteor - Collezioni
In questo capitolo impareremo come usare MongoDB collezioni.
Crea una raccolta
Possiamo creare una nuova raccolta con il seguente codice:
meteorApp.js
MyCollection = new Mongo.Collection('myCollection');
Aggiungi dati
Una volta creata la raccolta, possiamo aggiungere dati utilizzando il file insert metodo.
meteorApp.js
MyCollection = new Mongo.Collection('myCollection');
var myData = {
key1: "value 1...",
key2: "value 2...",
key3: "value 3...",
key4: "value 4...",
key5: "value 5..."
}
MyCollection.insert(myData);
Trova dati
Possiamo usare il file find metodo per cercare i dati nella raccolta.
meteorApp.js
MyCollection = new Mongo.Collection('myCollection');
var myData = {
key1: "value 1...",
key2: "value 2...",
key3: "value 3...",
key4: "value 4...",
key5: "value 5..."
}
MyCollection.insert(myData);
var findCollection = MyCollection.find().fetch();
console.log(findCollection);
La console mostrerà i dati che abbiamo inserito in precedenza.
Possiamo ottenere lo stesso risultato aggiungendo i parametri di ricerca.
meteorApp.js
MyCollection = new Mongo.Collection('myCollection');
var myData = {
key1: "value 1...",
key2: "value 2...",
key3: "value 3...",
key4: "value 4...",
key5: "value 5..."
}
MyCollection.insert(myData);
var findCollection = MyCollection.find({key1: "value 1..."}).fetch();
console.log(findCollection);
Aggiorna dati
Il prossimo passo è aggiornare i nostri dati. Dopo aver creato una raccolta e inserito nuovi dati, possiamo utilizzare il fileupdate metodo.
meteorApp.js
MyCollection = new Mongo.Collection('myCollection');
var myData = {
key1: "value 1...",
key2: "value 2...",
key3: "value 3...",
key4: "value 4...",
key5: "value 5..."
}
MyCollection.insert(myData);
var findCollection = MyCollection.find().fetch();
var myId = findCollection[0]._id;
var updatedData = {
key1: "updated value 1...",
key2: "updated value 2...",
key3: "updated value 3...",
key4: "updated value 4...",
key5: "updated value 5..."
}
MyCollection.update(myId, updatedData);
var findUpdatedCollection = MyCollection.find().fetch();
console.log(findUpdatedCollection);
La console mostrerà che la nostra collezione è aggiornata.
Elimina dati
I dati possono essere eliminati dalla raccolta utilizzando il file removemetodo. Ci stiamo ambientandoid in questo esempio come parametro per eliminare dati specifici.
meteorApp.js
MyCollection = new Mongo.Collection('myCollection');
var myData = {
key1: "value 1...",
key2: "value 2...",
key3: "value 3...",
key4: "value 4...",
key5: "value 5..."
}
MyCollection.insert(myData);
var findCollection = MyCollection.find().fetch();
var myId = findCollection[0]._id;
MyCollection.remove(myId);
var findDeletedCollection = MyCollection.find().fetch();
console.log(findDeletedCollection);
La console mostrerà un array vuoto.
Se vogliamo eliminare tutto dalla raccolta, possiamo utilizzare lo stesso metodo, invece di id useremo un oggetto vuoto {}. Dobbiamo farlo sul server per motivi di sicurezza.
meteorApp.js
if (Meteor.isServer) {
MyCollection = new Mongo.Collection('myCollection');
var myData = {
key1: "value 1...",
key2: "value 2...",
key3: "value 3...",
key4: "value 4...",
key5: "value 5..."
}
MyCollection.insert(myData);
MyCollection.remove({});
var findDeletedCollection = MyCollection.find().fetch();
console.log(findDeletedCollection);
}
Possiamo anche cancellare i dati utilizzando altri parametri. Come nell'esempio precedente, Meteor ci costringerà a farlo dal server.
meteorApp.js
if (Meteor.isServer) {
MyCollection = new Mongo.Collection('myCollection');
var myData = {
key1: "value 1...",
key2: "value 2...",
key3: "value 3...",
key4: "value 4...",
key5: "value 5..."
}
MyCollection.insert(myData);
MyCollection.remove({key1: "value 1..."});
var findDeletedCollection = MyCollection.find().fetch();
console.log(findDeletedCollection);
}
Si può vedere che i dati vengono cancellati dalla finestra di comando.