Wie können Sie alle Dokumente aus einer Sammlung mit Mongoose entfernen?

Ich weiß, wie ich...

  • Entfernen Sie ein einzelnes Dokument.
  • Entfernen Sie die Sammlung selbst.
  • Entfernen Sie alle Dokumente aus der Sammlung mit "Mongo".

Aber ich weiß nicht, wie man entfernen Sie alle Dokumente aus der Sammlung mit Mungo. Ich möchte das wenn der Benutzer auf eine Schaltfläche klickt. Ich gehe davon aus, dass ich zu senden Sie eine AJAX-Anfrage zu einigen Endpunkt und dem Endpunkt tun, die Entfernung, aber ich weiß nicht, wie zu handhaben die Entfernung auf dem Endpunkt.

In meinem Beispiel habe ich eine Datetime Sammlung, und ich möchte Sie entfernen Sie alle Dokumente, wenn der Benutzer auf eine Schaltfläche klickt.

api/datetime/index.js

'use strict';

var express = require('express');
var controller = require('./datetime.controller');

var router = express.Router();

router.get('/', controller.index);
router.get('/:id', controller.show);
router.post('/', controller.create);
router.put('/:id', controller.update);
router.patch('/:id', controller.update);
router.delete('/:id', controller.destroy);

module.exports = router;

api/datetime/datetime.controller.js

'use strict';

var _ = require('lodash');
var Datetime = require('./datetime.model');

//Get list of datetimes
exports.index = function(req, res) {
  Datetime.find(function (err, datetimes) {
    if(err) { return handleError(res, err); }
    return res.json(200, datetimes);
  });
};

//Get a single datetime
exports.show = function(req, res) {
  Datetime.findById(req.params.id, function (err, datetime) {
    if(err) { return handleError(res, err); }
    if(!datetime) { return res.send(404); }
    return res.json(datetime);
  });
};

//Creates a new datetime in the DB.
exports.create = function(req, res) {
  Datetime.create(req.body, function(err, datetime) {
    if(err) { return handleError(res, err); }
    return res.json(201, datetime);
  });
};

//Updates an existing datetime in the DB.
exports.update = function(req, res) {
  if(req.body._id) { delete req.body._id; }
  Datetime.findById(req.params.id, function (err, datetime) {
    if (err) { return handleError(res, err); }
    if(!datetime) { return res.send(404); }
    var updated = _.merge(datetime, req.body);
    updated.save(function (err) {
      if (err) { return handleError(res, err); }
      return res.json(200, datetime);
    });
  });
};

//Deletes a datetime from the DB.
exports.destroy = function(req, res) {
  Datetime.findById(req.params.id, function (err, datetime) {
    if(err) { return handleError(res, err); }
    if(!datetime) { return res.send(404); }
    datetime.remove(function(err) {
      if(err) { return handleError(res, err); }
      return res.send(204);
    });
  });
};

function handleError(res, err) {
  return res.send(500, err);
}
Kommentar zu dem Problem
Sie müssen erstellen Sie eine route löschen mit ajax löschen. zeigen Sie mir den html-code-Schaltfläche. Kommentarautor:
nun, ich kann helfen u.. nur eine Sekunde, ich werde den code. Kommentarautor:
zeigen Sie mir den html-button, bitte. Kommentarautor:
@MrBearAndBear - ich habe nicht geschrieben, den code für den button noch. Die Schaltfläche sendet eine AJAX-Anfrage an den endpoint - ich muss nur wissen, wie die Struktur der Endpunkt. Kommentarautor: Adam Zerner
überprüfen Sie heraus meine Antwort @AdamZerner Kommentarautor:

InformationsquelleAutor der Frage Adam Zerner | 2015-01-25

Schreibe einen Kommentar