For Homework you will be writing a node application to practice using Mongoose. You task: create an app that tracks and stores Restaurants and Menu Items.
Fork and clone this repo. Then run $ npm install
to install all the modules listed in package.json
.
You can test your code by running $ nodemon index.js
in the Terminal.
You'll begin by creating an app that performs CRUD functionality on a database using Mongoose queries. You should not be using Express yet.
-
Create schemas and corresponding models for a restaurant and for menu items.
-
Adds seed data for the restaurant and menu items...
-
A restaurant should have the following field names...
name
- a stringaddress
- an object with astreet
(string) andzipcode
property (number)yelpUrl
- a stringitems
- an array containing your MenuItems schema
-
A menu item should contain the followin...
title
- a string
-
Create a new restaurant.
-
Write a function or method that finds a restaurant by
name
. -
Write a function or method that finds all restaurants by
zipCode
. -
Create a function that updates a restaurant.
-
Write a function or method that deletes a restaurant.
-
Write methods to add and remove embedded menu item documents for a restaurant of your choosing.
You will know how to do this after Monday morning's Express + Mongoose lesson. Feel free, however, to give this a shot over the weekend.
Turn YUM into an Express app with routes that you can view in your browser and forms that manipulate your data with full CRUD.
Your app should have two pages...
- A page that lists all restaurants, on which a user can create a new restaurant.
- A page that lists one restaurant and all its menu items, on which a user can...
- Delete the restaurant.
- Update the restaurant.
- Create a new menu item for the restaurant.
- Delete a menu item from the restaurant.