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:

  1. Insert the new movie and show.

@app.route('/api', methods=['POST'])


  1. Update the movie and show information using title. (By update title, description and imdb score)

@app.route('/api/<string:fname>', methods=['PATCH'])


  1. Delete the movie and show information using title.

@app.route('/api/<string:fname>', methods=['DELETE'])


  1. Retrieve all the movies and shows in database.

@app.route('/api', methods=['GET'])




  1. 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.