Skip to content
Open

done #42

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
52 changes: 31 additions & 21 deletions routes/drones.js
Original file line number Diff line number Diff line change
@@ -1,36 +1,46 @@
const express = require('express');
const express = require("express");
const Drone = require("../models/Drone.model");
const router = express.Router();

// require the Drone model here

router.get('/drones', (req, res, next) => {
// Iteration #2: List the drones
// ... your code here
// List Drones
router.get("/", (req, res) => {
Drone.find()
.then((drones) => res.render("drones/list", { drones }))
.catch((err) => console.log("Error fetching drones:", err));
});

router.get('/drones/create', (req, res, next) => {
// Iteration #3: Add a new drone
// ... your code here
// Create Drone (Form)
router.get("/create", (req, res) => {
res.render("drones/create-form");
});

router.post('/drones/create', (req, res, next) => {
// Iteration #3: Add a new drone
// ... your code here
// Create Drone (POST)
router.post("/create", (req, res) => {
Drone.create(req.body)
.then(() => res.redirect("/drones"))
.catch((err) => console.log("Error creating drone:", err));
});

router.get('/drones/:id/edit', (req, res, next) => {
// Iteration #4: Update the drone
// ... your code here
// Update Drone (Form)
router.get("/:id/edit", (req, res) => {
Drone.findById(req.params.id)
.then((drone) => res.render("drones/update-form", { drone }))
.catch((err) => console.log("Error finding drone:", err));
});

router.post('/drones/:id/edit', (req, res, next) => {
// Iteration #4: Update the drone
// ... your code here
// Update Drone (PUT)
router.post("/:id/edit", (req, res) => {
Drone.findByIdAndUpdate(req.params.id, req.body, { new: true })
.then(() => res.redirect("/drones"))
.catch((err) => console.log("Error updating drone:", err));
});

router.post('/drones/:id/delete', (req, res, next) => {
// Iteration #5: Delete the drone
// ... your code here
// Delete Drone
router.post("/:id/delete", (req, res) => {
Drone.findByIdAndDelete(req.params.id)
.then(() => res.redirect("/drones"))
.catch((err) => console.log("Error deleting drone:", err));
});

module.exports = router;