delete, add new box
This commit is contained in:
+38
-20
@@ -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;
|
||||
}
|
||||
Reference in New Issue
Block a user