Skip to main content

Web Development with Python and Django


SolaceTech
Enrollment in this course is by invitation only

About This Course

This course aims to build a strong foundation in Django by building a web ecommerce site..

Django is a popular web application framework for the Python language. It is commonly used for rapid application development for web applications or mobile application backends. Example of popular sites using Django are Pinterest, Instagram, etc.

This course aims to build a strong foundation in Django by building a web ecommerce site. By the end of the course, participants are expected to be able to finish an ecommerce site with several features: user registration, authentication, update shipping address, adding products, integration with Stripe payment gateway.

This is a blended learning style, where participants will learn with face to face sessions, and self-paced online sessions. Self-paced session will be spread 15-30 mins per day. There will be evaluation at the end of each module, where result will be recorded and can be downloaded later for review.

Requirements

Know basic Python, HTML, and CSS.

Syllabus

Setup

  1. Github account 
  2. c9.io account 

Introduction 

  1. What is Python & Django? 
  2. What is HTML / CSS? 
  3. Creating wireframes of the eCommerce site
  4. eCommerce website features to build 
    1. Add products via Django admin
    2. Allow user signups
    3. Users can update their shipping address
    4. Users can pay with credit card (Stripe)

Models 

  1. What is Model in Django
  2. Create Product model

Database migrations in Django

Admin

    1. Create Product Admin
    2. Add /static/ and /media/ settings
    3. Insert a few products

 

Views

    1. What are Views in Django
    2. Create a view that shows all available products

URLs

    1. URL in Django

Templates

    1. Templates in Django
    2. Create a base.html template
    3. Create a home.html template
    4. Create a partials/product.html template

Authentication 

    1. Authentication in Django
    2. Install django-allauth
    3. Configure django-allauth

User’s Profile 

    1. Create UserProfile app
    2. Create signal that creates UserProfile instance when User instance is created

Third Party Application / Library 

    1. Installing Stripe library
    2. Create stripe_integration app
    3. Create Checkout view
    4. Create Checkout template with Stripe JS widget
    5. Create Checkout URL

Writing tests 

Installation (if time permits)

Course Staff

Course Staff Image #1

Christianto

More than 14 years experience doing development for large MNCs like Computer Science Corp, Deutsche Bank, Hewlett Packard. Graduate of Founder Institute (www.fi.com) 2014 , Singapore

Frequently Asked Questions

Which version of Python will be used?

We will use Python 3.6 for this lesson.