delete, add new box

This commit is contained in:
np.w
2020-07-11 03:04:26 -05:00
parent 00dafaff63
commit bd4c259f99
5 changed files with 118 additions and 40 deletions
+38 -20
View File
@@ -1,10 +1,9 @@
const express = require('express');
const cors = require('cors')
const mongoose = require('mongoose');
const app = express();
app.use(cors());
const cors = require('cors');
app.use(cors(), express.json());
const port = process.env.PORT || 5000;
const MONGO_IP_ADDRESS = '192.168.1.2';
@@ -15,7 +14,6 @@ const db = mongoose.connection;
db.on('error', console.error.bind(console, 'connection error:'));
db.once('open', function() {
console.log(`connected to mongodb: ${MONGO_IP_ADDRESS}`);
// we're connected!
});
@@ -34,27 +32,47 @@ var boxSchema = new mongoose.Schema({
description: String,
item: [itemSchema],
});
//compile schema into model
var Box = mongoose.model('box', boxSchema, 'box');
/*------------MODELS------------*/
/*------------/MODELS------------*/
/*------------CONTROLLER------------*/
app.listen(port, () => console.log(`Listening on port ${port}`));
// get all boxes
app.get('/box', async (req, res) => {
const query = Box.find({});
const data = await query.exec();
console.log(data);
res.send(data);
});
// create new box
app.post('/box', async (req, res) => {
console.log(req);
const query = Box.create();
const data = await query.exec();
console.log(data);
res.send(data);
app.get('/box', async (request, response) => {
const boxes = await getAllBoxes();
response.send(boxes);
});
/*------------CONTROLLER------------*/
// create new box
app.post('/box', async (request, response) => {
Box.create(request.body, (error, document) => {
if(error) return request.next(error);
return document;
});
const updatedBoxes = await getAllBoxes();
response.send(updatedBoxes);
});
//delete box
app.delete('/box/:id', async (request, response) => {
Box.deleteOne({_id: request.params.id}, (error, document) => {
if(error)return null;
return document;
});
const updatedBoxes = await getAllBoxes();
response.send(updatedBoxes);
})
/*------------/CONTROLLER------------*/
const getAllBoxes = async (queryParameters) => {
queryParameters = queryParameters ?? {};
const data = Box.find(queryParameters, (error, document) => {
if(error) return null;
return document;
});
return data;
}