Implementing FLASH IN PROJECT

 WE CREATE A FLASH MESSAGE THAT POPS WHEN A NEW LISTING IS ADDED.

IN APP.JS 

FIRST INSTALL FLASH : npm i connect-flash

const flash = require("connect-flash");

app.use(sessions(sessionOptions));
app.use(flash());

app.use((req, res, next) => {
 res.locals.success= req.flash("success");
  next();
});


THESE LINES SHOULD BE WRITTEN BEFORE ROUTES.

app.use("/listings", listings);
app.use("/listings/:id/reviews", reviews);

IN LISTINGS.JS (ROUTES FOLDER)

router.post(
  "/",
  ValidateListing,
  wrapAsync(async (req, res, next) => {
    const newListing = new Listing(req.body.listing);

    await newListing.save();
    req.flash("success", "New Listing Added!");
    res.redirect("/listings");
  })
);

IN INDEX.EJS

ADD <%= success %>

<% layout("/layouts/boilerplate")%> <%=success %>



Comments