diff --git a/models/movies.model.js b/models/movies.model.js new file mode 100644 index 0000000..6149bf3 --- /dev/null +++ b/models/movies.model.js @@ -0,0 +1,17 @@ +// Iteration #1 + +const {Schema, model} = require('mongoose'); //de-structuring with this syntax + +const movieSchema = new Schema( { + title: String, + director: String, + stars: [{type: String}], + image: String, + description: String, + showtimes:[{type:String}] + +}); + +const movie = model("movie", movieSchema); + +module.exports = movie; diff --git a/routes/movies.js b/routes/movies.js new file mode 100644 index 0000000..132f22d --- /dev/null +++ b/routes/movies.js @@ -0,0 +1,87 @@ +const express = require('express'); +const router = express.Router(); + + +// require the Drone model here +const movieModel = require('../models/Movies.model') + +router.get('/movies', (req, res, next) => { + // Iteration #2: List the drones + // ... your code here + movieModel.find() + .then((movies) => { + res.render("movies/movies.hbs", {movies}) + }).catch((err) => { + console.log('Failed!',err) + }); + +}); + +router.get('/movies/:id', (req, res, next) => { + // Iteration #4: Update the drone + // ... your code here + const {id} = req.params; + movieModel.findById(id) + .then((movies) => { + res.render('movies/details.hbs',{movies}) + }).catch((err) => { + console.log('Failed!') + }); +}); + +// router.get('/drones/create', (req, res, next) => { +// // Iteration #3: Add a new drone +// // ... your code here +// res.render("drones/create-form.hbs") +// }); + +// router.post('/drones/create', (req, res, next) => { +// //console.log(req.body) +// const {name,propellers,maxSpeed} = req.body +// droneModel.create({name,propellers,maxSpeed}) +// .then((result) => { +// res.redirect("/drones") +// }).catch((err) => { +// console.log('Failed!') +// }); +// }); + +// router.get('/drones/:id/edit', (req, res, next) => { +// // Iteration #4: Update the drone +// // ... your code here +// const {id} = req.params; +// droneModel.findById(id) +// .then((drones) => { +// res.render('drones/update-form.hbs',{drones}) +// }).catch((err) => { +// console.log('Failed!') +// }); +// }); + +// router.post('/drones/:id/edit', (req, res, next) => { +// // Iteration #4: Update the drone +// // ... your code here +// const {id} = req.params +// const {name,propellers,maxSpeed} = req.body +// droneModel.findByIdAndUpdate(id, {name,propellers,maxSpeed}) +// .then((result) => { +// res.redirect('/drones') +// }).catch((err) => { +// console.log('Failed!') +// }); + +// }); + +// router.get('/drones/:id/delete', (req, res, next) => { +// // Iteration #5: Delete the drone +// // ... your code here +// const {id} = req.params +// droneModel.findByIdAndDelete(id) +// .then((result) => { +// res.redirect('/drones') +// }).catch((err) => { +// console.log('Failed!') +// }); +// }); + +module.exports = router; diff --git a/views/movies/details.hbs b/views/movies/details.hbs new file mode 100644 index 0000000..4265236 --- /dev/null +++ b/views/movies/details.hbs @@ -0,0 +1,19 @@ +Go Back +

+ +
+
+
+ +
+
+
+

{{movies.title}}

+
Director: {{movies.director}}
+

Stars: {{movies.stars}}

+

{{movies.description}}

+

{{movies.showtimes}}

+
+
+
+