Django A-Z: Build and Deploy Web Application with Python and Django

Video description

Embark on a structured web development journey from scratch with Python as your trusty companion. This course is designed to introduce Django beginners to all the essential concepts, featuring the latest LTS version.

Starting with setting up your development environment, we will guide you through the flow and file structure of Django, ensuring you grasp the fundamental building blocks. As we delve deeper into the course, you will unravel the power of Django URLs, views, and templates, allowing you to create dynamic web applications.

After that you will be working with worms and fields, equipping you with the skills to create user-friendly interfaces. Unleash the potential of function-based views to handle complex application logic effortlessly. Stay connected with your users through messages and notifications, enhancing the overall user experience.

The Django authentication system is demystified as we guide you through the functionality for registration, login, and logout. Elevate your registration process by integrating Crispy Form, ensuring a seamless user journey. Dive into the world of restrictions, understanding how to enforce limitations on specific pages and headers.

Next, you will unlock the power of relationships between models, explore concepts, and stay up to date with the latest security updates in Django, securing your applications and protecting user data. And when it's time to deploy your masterpiece, we will cover the four important pillars of successful deployment: Git, GitHub, Heroku, and the Heroku CLI.

By the end of this course, you will be equipped to tackle beginner-level projects with confidence, whether you are pursuing internships, starting as a fresher, or embarking on a freelance journey.

What You Will Learn

  • Learn about Django apps, templates, models, and migrations
  • Learn about the MVT (Model View Template) architecture
  • Understand Django’s authentication system and foreign key concept
  • Implement registration functionality, login, and logout
  • Integrate Crispy Form to improve registration functionality
  • Usage of Django messages and forms

Audience

This course is designed for a diverse range of individuals who are interested in learning Django and exploring web development. It is particularly suitable for aspiring web developers and Python developers who want to expand their skill set and venture into web development and gain a solid understanding of Django.

For programming enthusiasts who have a passion for programming and a keen interest in web development using Django, this course provides an accessible pathway.

Whether you have limited coding experience or are an experienced developer, this course caters to both, and only basic Python knowledge is required.

About The Authors

Shubham Sarda: Shubham is a software developer and digital marketer with a passion for teaching. He has worked with many funded start-ups, self-projects, and as a top-rated freelancer on multiple marketplaces. Currently, he stands among the top 700 freelancers with over 2,500+ projects on Fiverr, PeoplePerHour, Freelancer, and more.

As an instructor, he has taught programming and digital marketing to over 20,000 students, both with online courses and offline bootcamps. He has mastered explaining complex topics in the simplest form that is easy to understand and follow. His video courses are also used by companies to train their employees and by colleges to prepare and upgrade their students according to the latest industry requirements.

Table of contents

  1. Chapter 1 : Course Introduction
    1. Course Introduction
    2. Resources
  2. Chapter 2 : AI Assistance: ChatGPT and Bard
    1. ChatGPT and Bard
  3. Chapter 3 : Django as Framework
    1. Understanding Django
  4. Chapter 4 : Project Setup
    1. Setting Up Text Editor - VSCode
    2. Setting Up Virtual Environment
  5. Chapter 5 : Core Django - Starting Our Project
    1. Startapp – Taskmate
    2. Runserver for First Time
    3. Django Flow and Django Structure
    4. URLs and Views
  6. Chapter 6 : Templates
    1. Templates
    2. Bootstrap
    3. Working with Jinja 2
    4. Base Template and Jinja 2
    5. Static Folder and Improving Website Look
  7. Chapter 7 : Model and Migration (Database Stuff)
    1. Admin Panel
    2. Models
    3. Database Migrations
  8. Chapter 8 : Fetch Data and Display on Template
    1. Fetch Data from Database
    2. Displaying Data on Templates
    3. Adding Condition on Data
  9. Chapter 9 : Django Forms
    1. Adding Form and Accepting Input
  10. Chapter 10 : Django Messages
    1. Adding Messages and Alert Option
    2. Close Option on Alert
  11. Chapter 11 : Understanding CSS and Bootstrap
    1. Understanding CSS and Bootstrap
  12. Chapter 12 : Implementing CRUD Functionality
    1. Deleting QuerySet Item
    2. Editing QuerySet Item – 1
    3. Editing QuerySet Item – 2
    4. Editing QuerySet Item – 3
    5. Adding Option - Mark Task as Completed
    6. Adding Option - Mark Task as Pending
  13. Chapter 13 : Pagination
    1. Pagination Overview
    2. Implementing Pagination – 1
    3. Implementing Pagination – 2
    4. Implementing Pagination – 3
  14. Chapter 14 : Designing Task Page
    1. Fixing URLs and Links
    2. Fixing Task Page Design – 1
    3. Fixing Task Page Design – 2
  15. Chapter 15 : Designing HomePage Using Bootstrap
    1. Designing Homepage – 1
    2. Designing Homepage – 2
  16. Chapter 16 : Accounts and Authentication
    1. Introduction - Django Authentication System
    2. Creating User Section
  17. Chapter 17 : Registration
    1. Registration Form
    2. Register Templates
    3. Register Views (Part 1)
    4. Register Views (Part 2)
    5. Adding Email Field in Forms
    6. Improving Form Design with Crispy Forms
    7. Adding Grid Layout on Registration Page
  18. Chapter 18 : Login and Logout
    1. Login - URLs, Views, and Template
    2. Login – Functionality Test
    3. Login - Redirect URL
    4. Logout
    5. Quick Design Change
  19. Chapter 19 : Adding Restrictions
    1. Adding Header Restriction (Part 1)
    2. Adding Header Restriction (Part 2)
    3. Adding Page Restrictions
  20. Chapter 20 : Relationship Between Task and User
    1. Relationship Between Task and User
    2. Adding Foreign Key
    3. Updating Task Input Fields
    4. Task of Logged-In User Only
  21. Chapter 21 : Securing Our Application
    1. Security Problem and Solution (Part 1)
    2. Security Problem and Solution (Part 2)
  22. Chapter 22 : Database: PostgreSQL
    1. PostgreSQL - I
    2. PostgreSQL - II
  23. Chapter 23 : Complete Project Deployment
    1. Deployment Introduction
    2. Upgrading Django LTS/Latest Version
    3. Working with Requirements and gitignore Files
    4. Working with Environment Variables
    5. Pushing Project on GitHub
    6. Deploying on Railway App
    7. Serving Static Files
    8. Allowed Host and CSRF Domain
    9. Database Connection Locally
    10. Working with README and Demo
  24. Chapter 24 : Course Recap and Learning Path Ahead
    1. Bonus – What's Next?

Product information

  • Title: Django A-Z: Build and Deploy Web Application with Python and Django
  • Author(s): Shubham Sarda
  • Release date: July 2023
  • Publisher(s): Packt Publishing
  • ISBN: 9781839213960