Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 4 additions & 2 deletions w1/app.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,8 @@ const bodyParser = require('body-parser');
const morgan = require('morgan');

// Routes
const Student = require('./routes/routes');
const studentRouter = require('./routes/student');
const testRouter = require('./routes/test');

// Init App
const app = express();
Expand All @@ -15,7 +16,8 @@ app.use(bodyParser.urlencoded({ extended: true }));
app.use(morgan('dev'));

// Mount Router
app.use('/student', Student);
app.use('/student', studentRouter);
app.use('/test', testRouter);

// Err-handling
app.use(function(err, req, res, next) {
Expand Down
52 changes: 52 additions & 0 deletions w1/routes/student.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
// Express routes
const router = require('express').Router()

// Create Student Models
let students = [
{ id : 0, name : 'Dan'},
{ id : 1, name : 'Rohan'},
{ id : 2, name : 'Sol'},
{ id : 3, name : 'Ella'},
{ id : 4, name : 'Michael'},
{ id : 5, name : 'Karen'},
];

// Get Students
router.get('/', function(req, res ,next) {
res.json({students})
})

// Get Student by Id
router.get('/:id', function(req, res ,next) {
let student = students.filter(person => person.id === req.params.id);
res.json({student})
})

// Add Student
router.post('/', function(req, res ,next) {
let newId = students.length + 1;
let student = {
id : newId,
name : req.body.name
}
students.push(student)
res.json({students})
})

// Delete Student
router.delete('/:id', function(req, res ,next) {
let newClass = students.filter(person => person.id != req.params.id)
students = newClass;
res.json({students})
})

// Update Student
router.put('/:id', function(req, res ,next) {
let updatedStudent = students.filter(person => person.id === req.params.id)[0];
updatedStudent.name = req.body.name;
students[req.params.id] = updatedStudent;
res.json({students})
})


module.exports = router
51 changes: 1 addition & 50 deletions w1/routes/routes.js → w1/routes/test.js
Original file line number Diff line number Diff line change
@@ -1,16 +1,6 @@
// Express routes
const router = require('express').Router()

// Create Student Models
let students = [
{ id : 0, name : 'Dan'},
{ id : 1, name : 'Rohan'},
{ id : 2, name : 'Sol'},
{ id : 3, name : 'Ella'},
{ id : 4, name : 'Michael'},
{ id : 5, name : 'Karen'},
];

let tests = [
{id : 0, subject : 'Physics', score : 99, studentId : 0},
{id : 1, subject : 'English', score : 78, studentId : 1},
Expand All @@ -19,42 +9,6 @@ let tests = [
{id : 4, subject : 'Physics', score : 88, studentId : 4},
]

// Get Students
router.get('/', function(req, res ,next) {
res.json({students})
})

// Get Student by Id
router.get('/:id', function(req, res ,next) {
let student = students.filter(person => person.id === req.params.id);
res.json({student})
})

// Add Student
router.post('/', function(req, res ,next) {
let newId = students.length + 1;
let student = {
id : newId,
name : req.body.name
}
students.push(student)
res.json({students})
})

// Delete Student
router.delete('/:id', function(req, res ,next) {
let newClass = students.filter(person => person.id != req.params.id)
students = newClass;
res.json({students})
})

// Update Student
router.put('/:id', function(req, res ,next) {
let updatedStudent = students.filter(person => person.id === req.params.id)[0];
updatedStudent.name = req.body.name;
students[req.params.id] = updatedStudent;
res.json({students})
})


// Get Tests
Expand Down Expand Up @@ -96,9 +50,6 @@ router.put('/tests/:id', function(req, res ,next) {
updatedScore.subject = req.body.subject;
tests[req.params.id] = updatedScore;
res.json({tests})
})



});

module.exports = router