Ενημέρωση και αφαίρεση εγγράφων NoSQL
Τα update(data) και remove() λειτουργούν όπως το find(): προσθέστε τις συνθήκες με .where() και τελειώστε με .callback(function(err, count) {}). Το callback παίρνει τον αριθμό των εγγράφων που άλλαξαν ή αφαιρέθηκαν. Προσθέτετε πάντα μια συνθήκη: χωρίς αυτήν η λειτουργία εφαρμόζεται σε κάθε έγγραφο.
Το update(data) συγχωνεύει τα πεδία του data στα έγγραφα που ταιριάζουν. Χρησιμοποιήστε το read() για να πάρετε ένα μεμονωμένο έγγραφο.
exports.install = function() {
ROUTE('POST /tasks/', create);
ROUTE('PATCH /tasks/{id}/', done);
ROUTE('DELETE /tasks/{id}/', remove);
ROUTE('GET /tasks/{id}/', read);
};
function create($) {
var task = { id: $.body.id, title: $.body.title, done: false };
NOSQL('tasks').insert(task).callback(() => $.json(task));
}
function done($) {
NOSQL('tasks').update({ done: true }).where('id', $.params.id).callback((err, count) => $.json({ updated: count }));
}
function remove($) {
NOSQL('tasks').remove().where('id', $.params.id).callback((err, count) => $.json({ removed: count }));
}
function read($) {
NOSQL('tasks').read().where('id', $.params.id).callback((err, response) => $.json(response || { missing: true }));
}