Python/Django MVC
Expected Learnings
● Classes
● Objects
● Variables
○ Data types
● Numbers
● String
● List
● Tuple
● Dictionary
● Decision Making
● Loops
● Methods
● Use of self operator
● File I/O
● Exceptions
● Iterators
● Regular Expressions
● Models
● Views
● ORM
● Middleware
● REST APIs
● CRUD operations
● Object oriented concepts
● Inheritance
● Abstraction
● Polymorphism
Study Material
Day 1
● Python Basics and Data structures
● https://realpython.com/tutorials/basics/
● https://www.w3schools.com/python/
● https://www.journaldev.com/14036/python-data-types
● PIP (Installing Python Modules)
● https://docs.python.org/3/installing/index.html
● Virtual Environment Setup and Configuration with Understanding
● https://www.quora.com/Why-do-I-need-a-virtual-environment-in-Python-and-who-
do-I-set-it-up
● https://www.google.co.in/amp/s/www.geeksforgeeks.org/python-virtual-
environment/amp/\
● Django setup (Systems should be already configured with this):
● Installation guide (https://docs.djangoproject.com/en/3.2/intro/install/)
● Pycharm (Editor) https://www.jetbrains.com/pycharm/download/download-
thanks.html?platform=linux&code=PCC
● Django basics
○ https://www.youtube.com/watch?
v=qgGIqRFvFFk&list=PL6gx4Cwl9DGBlmzzFcLgDhKTTfNLfX1IK
● https://docs.djangoproject.com/en/3.2/
● https://overiq.com/django-1-11/
Udemy Courses
● https://www.udemy.com/course/complete-python-bootcamp/learn/lecture/3421822#overview
Day 2
● Django Models
● Introduction to models
● Field types
● Indexes
● Meta options
● Model class
○ https://docs.djangoproject.com/en/3.2/topics/db/models/
● Django Migrations
● https://docs.djangoproject.com/en/3.2/topics/migrations/
Day 3
● Working with Django ORM via shell
● https://tutsorial.djangogirls.org/en/django_orm/
● Django Views
● ]https://docs.djangoproject.com/en/3.2/topics/http/views/
● QuerySets
● https://docs.djangoproject.com/en/3.2/topics/db/queries/
Day 4
● URL dispatcher
○ https://docs.djangoproject.com/en/3.2/topics/http/urls/
● Django Forms
● https://docs.djangoproject.com/en/3.2/ref/forms/
● https://tutorial.djangogirls.org/en/django_forms/
● Django templates
○ https://www.javatpoint.com/django-template
Day 5
● Django Logging
https://docs.djangoproject.com/en/3.2/topics/logging/
● Django coding style
https://docs.djangoproject.com/en/dev/internals/contributing/writing-code/coding-style/
Day 6
Django Rest framework
● Making Django query:
https://docs.djangoproject.com/en/3.2/topics/db/queries/
● Middlewares
https://docs.djangoproject.com/en/3.2/topics/http/middleware/
Day 7
● Basic Restful concepts
https://restful.io/an-introduction-to-api-s-cee90581ca1b
https://dzone.com/articles/5-basic-rest-api-design-guidelines
https://mlsdev.com/blog/81-a-b3eginner-s-tutorial-for-understanding-restful-api
● HTTP:
https://docs.google.com/document/d/
1Rb2W4LL9xDAkXjs3Vo4iqLeggWm__wGjFEeV2wS7zBk/edit?usp=sharing
Day 8
● Getting started to create a Django rest -framework project:
https://medium.com/backticks-tildes/lets-build-an-api-with-django-rest-framework-
32fcf40231e5
● Building API with Django rest-framework (BOOK):
https://drive.google.com/file/d/11doSWjO4O3eMjjU-AMJqBdiIn1Yoeojz/view?usp=sharing
Day 9
Key concepts and understandings required for Django rest-framework:
● Creating models
● Endpoints and URLs
● Creating views for the URLs
https://docs.djangoproject.com/en/3.2/topics/class-based-views/
https://docs.djangoproject.com/en/3.2/topics/http/urls/
Day 10
● Relational Database
https://docs.google.com/document/d/1SEvwq7mQBYAzOIZCo-
0DmSVSVUmP0X46nZTLuN_kZgY/edit#
Day 11
● Serializer in DRF
https://www.django-rest-framework.org/api-guide/serializers/
Day 12
● Serializer fields in DRF:
https://www.django-rest-framework.org/api-guide/fields/
QUIZ
Program to convert a list into a nested dictionary of keys
Program to check multiple keys exists in a dictionary
Program to create a dictionary from two lists without losing duplicate values
Practical Assignment Questions
1. Create an API for fetching the sentinel data.
2. Create a table for storing the sentinel api response data into the database.
3. Create an API for fetching the sentinel data from the database using the product ID.
4. Create a query for fetching the sentinel api response data from the database.
5. Create an API for generating the shape file using the coordinate.