Looking for Advanced Database Project.
CS5600: Programming Assignment (50 points)
In this assignment, you will learn and implement CRUD(Create, Read, Update, Delete). These are the basic APIs to perform at most functions on web applications. You will develop the backend web framework using Python Flask connect to MongoDB (https://www.mongodb.com). There are some videos on Blackboard about Flask framework and MongoDB that you can study before starting this assignment. To test the backend web framework, you must use API platforms such as Postman API Platform(https://www.postman.com).
The CSV file(Netflix.csv-Movie and Show on Netflix) is provided in this assignment with the column names including:
id
title
type
description
release_year
age_certification
runtime (mins.)
genres
production_countries
imdb_score
First, the instructor will guide you how to generate MongoDB Database and collections using MongoDB Compass. You will import this csv file to collection netflix on MongoDB database in JSON format.
The MongoDB Configuration:
Host = ‘localhost’
Port = 27017
Database name = database
Collection name = netflix
…
try:
mongo = pymongo.MongoClient(
host = 'localhost',
port = 27017,
serverSelectionTimeoutMS = 1000
)
db = mongo.database
mongo.server_info() #trigger exception if cannot connect to db
except:
print("Error -connect to db")
In xxxx.py file, you must perform the following main functions:
Insert the new movie and show.
@app.route('/api', methods=['POST'])
Update the movie and show information using title. (By update title, description and imdb score)
@app.route('/api/<string:fname>', methods=['PATCH'])
Delete the movie and show information using title.
@app.route('/api/<string:fname>', methods=['DELETE'])
Retrieve all the movies and shows in database.
@app.route('/api', methods=['GET'])
Display the movie and show’s detail using title.
@app.route('/api/<string:fname>', methods=['GET'])
Submission:
Turn in your codes and data files in folder name “PROG_ASSIGN_XXXXX_YYYYYY” where XXXXX is course number (CRN) and YYYYYY is 700# student id and zip the folder before submitting your assignment.
Notes:
If you want to use other web frameworks such as Java, JavaScript, PHP, or Microsoft Visual Studio .NET, etc. You must contact me beforehand and let me know how to execute your web framework. You can use the internet cloud application platforms such as Heroku (https://www.heroku.com) if you prefer. However, in your assignment submission, you must provide me the links for execute the web application and source codes.