Django Database ORM Mastery 2024

Learn how to master building and interacting with databases within a Django project

4.74 (336 reviews)
Udemy
platform
English
language
Other
category
instructor
Django Database ORM Mastery 2024
2,896
students
34 hours
content
Mar 2024
last update
$94.99
regular price

What you will learn

Setup and prepare an environment ready to develop Python Django applications

Develop Django models, manage models and create Django admin model interactions

Connect a Django application to multiple database technologies utilising Docker container technologies

Propagate changes to database tables structures

Build raw SQL queries to interact with database from within a Django project

Implement a variety of QuerySet API methods to limit, order and optimise performance

Implement a design methodology design and subsequently build and query a database

Description

Welcome to the Django Mastery Course: Mastering Database Interactions

Are you ready to unlock the full potential of Django and elevate your web development skills? Dive deep into the heart of Django with our comprehensive course designed to make you a master of database interactions.


Why Django ORM Matters: Unleashing Database Power Without SQL

One of Django's standout features is its Object-Relational Mapper (ORM), a powerful tool that empowers developers to interact with databases seamlessly. Forget about wrestling with SQL syntax (although we also teach you SQL in this course) – Django ORM allows you to focus on building robust and scalable applications by abstracting away the complexities of database management.


What You'll Learn: A Journey to Django Database Mastery

This course guides you through a transformative journey, starting from the basics and progressing to advanced techniques. From creating models and querying databases to leveraging powerful aggregation functions, you'll gain hands-on experience crafting efficient and high-performance Django applications.


Key Highlights:

  • Rapid Development: Learn how Django ORM accelerates your development process, allowing you to build feature-rich applications in record time.

  • Scalability: Understand the principles of designing scalable databases and ensuring your Django projects can easily handle growth.

  • Best Practices: Dive into best practices for structuring models, optimising queries, and maintaining a well-organized database schema.


Who Should Take This Course:

  • Django enthusiasts eager to enhance their skills in database interactions.

  • Developers looking to build scalable and performant web applications with Django.

  • Anyone wanting to harness the full potential of Django's ORM without delving into the complexities of SQL.


Embark on Your Django Database Mastery Journey:

Whether you're a seasoned developer or just starting your Django adventure, this course is your gateway to mastering database interactions. Join us as we demystify Django ORM, empowering you to build web applications that meet industry standards and set new benchmarks.


Ready to elevate your Django game? Let's embark on this journey together!


Trademark Usages and Fees Disclosures:

Usage of Django Logo: The Django logo used in this product is for identification purposes only, to signify that the content or service is Django-related. It does not imply that this product is officially endorsed by the Django Software Foundation (DSF) or the Django Core team as representatives of the Django project.

Fees Disclosure: We would like to clarify that the author will retain 100% of the fees to support this product's ongoing development and maintenance. Currently, 0% of the fees, if applicable, will be contributed back to the DSF as a donation to support the Django community further.

Note: The Django name and logo are registered trademarks of the Django Software Foundation, and their usage is subject to the Django Trademark License Agreement.

Content

Django Database ORM Mastery - Level 1

Course Introduction

Quick-Start Windows 10/11 Installation & Setup Guide

Installing Python 3.9.5
Installation and User Guide for Visual Studio Code
Creating Virtual Environments
Test Your Knowledge

Quick-Start MacOS Installation & Setup Guide

Installing Python 3.9.5
Installation and User Guide for Visual Studio Code
Creating Virtual Environments
Test Your Knowledge

Preparing the Development Environment

VSCode Extensions used in this course

New Django Developer - Django Induction [Optional]

Preparing a new Virtual Environment
Introducing the Python Package Index
Installing the Django Framework
Creating a new Django project
Creating a new Django application
Registering a new Django application
Starting the Django Development Server
Understanding the Django Request-Response Cycle
Creating a unique URL pattern
Writing a new view
Creating a new HTML template
Relating an HTML template to a view
Installing a Django application from a requirements.txt file
Test Your Knowledge

Working with SQLite Database [Level 1]

Section Introduction
Introducing SQLite databases
Connect an SQLite database to a Django project

Models [Level 1] - Building Models

Section Introduction
Section setup guide - step-by-step
Section setup guide (CodeBase-0)
Database Terminology
Introducing Django models
Adding a string representation of a model
The model verbose field name
Introducing django model field types
Introducing Django model field options
Defining model primary keys
Defining model Foreign Keys
Defining one-to-one model relationships
Defining Many-to-Many model relationships
Introducing model meta options
Check your knowledge - Building Models

Migrations [Level 1] - Committing to the Database

Section Introduction
Migrate model changes to the database schema

QuerySet API [Level 1] - Inspecting Queries & Performance Analysis

Section Introduction
Section setup guide - Codebase-1
Inspect queries with the query attribute
Inspect queries - connection and reset queries
Pretty print SQL

QuerySet API [Level 1] - Utility

Section Introduction
Counting returned queryset objects
Conveniently View data returned in queryset objects

QuerySet API [Level 1] - Create and Save Objects

Section Introduction
Section setup guide - Codebase-1
Insert data into a single table with create()
Insert data into a single table with save()
Explore the difference between save() and create()
SQL Insert - Executing custom SQL Inserts
Insert into single table with foreign key
SQL Insert - Working with datetime fields and foreign keys
Insert data into a single table with a many-to-many relationship
SQL Insert – Working with many-to-many relationships
Insert data into multiples tables & using atomic operations
Insert data into a single table with a one-to-one relationship
Insert multiple objects into single table – bulk create
Query Profiling – bulk_create() vs create() performance analysis
Creating and automating a set of Django Fixtures

QuerySet API [Level 1] - Retrieving objects

Section Introduction
Section setup guide (Codebase-2)
Return all objects from a single table – all()
SQL – Return all objects from a single table
Retrieving single objects from a single table – get()
SQL – Return single objects from a single table
Filter & Exclude - Retrieving specific objects
SQL – Filter retrieving objects – filter()
Retrieve objects from multiple tables through a foreign key relationship
SQL - Retrieve objects foreign key relationship
Retrieve objects from multiple tables through a one-to-one relationship
Retrieve objects from multiple tables through a many-to-many relationship

QuerySet API [Level 1] - Update Fields/Records

Section Introduction
Section setup guide (Codebase-2)
Modify existing data for a specified record in a table
Implementing update_or_create()
bulk_update records in a single table

QuerySet API [Level 1] - Delete Records

Section Introduction
Section setup guide (Codebase-2)
Delete single and multiple objects

Working with PostgreSQL Database [Level 1]

Section introduction
Docker introduction
Installing Docker MacOS
Installing Docker Desktop for Windows 10/11
Create a Postgres Docker container
Configuring Django to work with a PostgreSQL database

QuerySet API [Level 1] - Field lookup keywords arguments

Section Introduction
Section setup guide (Codebase-3)
Field lookups
Field lookup contains
Field lookup with greater or less than
Field lookup with start or end with
Field lookup range
Field lookup Day Week Month

QuerySet API [Level 1] - QuerySet Ordering and Limiting

Section Introduction
Section setup guide (Codebase-3)
Ordering a new QuerySet
Reverse the output of a new QuerySet
Return the first or last object matched by the queryset
Return the earliest or latest object matched by the QuerySet
Limit the objects returned from a QuerySet

QuerySet API [Level 1] - Practical Exercises & Answers

Section Introduction
Section setup guide (Codebase-4)
Reintroducing the database design and dataset
Retrieve all sub-products for an individual product
Retrieve a product featured image
Retrieve all values associated to a sub-product
Retrieve the product attributes for a given product type
Retrieve all products associated to product attribute id:1
Retrieve all sub-products that has less than 50 units left in stock
Retrieve all sub-products which have been stock checked in the last month
Retrieve all woman shoe products
Retrieve all woman shoes by the xyz brand
Retrieve all products associated to the xyz brand

Case Study 1 [Level 1] Ecommerce Inventory | Design | Build | Query

Case Study Introduction
Case Study Resources
Design - Design methodology
Design – Define the purpose
Design - Requirement analysis
Design - Defining the preliminary list of fields
Design - Defining the preliminary subjects/entities
Design - Refining the fields and tables
Design - Naming fields and tables
Design - Establishing Keys
Design - Field Specifications
Design - Table Relationships
Design - Table Relationships – update fields
Design - Business Rules
Design - Django / Application Rules
Build - Create the tables and fields
Data – Create data - Django Admin Site
Data – Create data - Django fixtures
Data – Create data - Management command

Django User Model [Level 2]

Section Intro - Django User Model
Introducing the Django User Model
Changing the User Model Behaviour (Proxy Model)
Store extra information about the existing User Model (User Profile)
Inherit and add extra fields to the user table (AbstractUser)

Models [Level 2] - Building Models

Field Choice Options

Bonus Section: Introducing Linters and Formatters

Introducing Linters and Formatters
Black
Flake8
Microsoft Python Extension

Reviews

Mikael
September 28, 2023
There is no doubt the instructor was thoughtful in making the course and delivered it perfectly. Some of the comments are complaining about the repetition but there are so many things that are now drilled into my medulla oblangata thanks to the repetition. I loved the course.
Jože
July 31, 2023
Great course, really good to dive deep into raw SQL. But I miss other important features like select_related, prefetch_related, annotations, aggregations. Other tools from django.db etc. Also there was lot of repetition but this is ok if I would ever need to go back to the specific section because sections are somehow unit tested. :D
Sebastian
July 23, 2023
Is a great course to learn Django ORM from the basis and walks you through the different components of the framework in an organized way.
Setiawan
July 8, 2023
Good course that i met ever. Everything is clearly described and detail. Easy to follow and implement in the real job. Thank you.
Robinson
June 11, 2023
I always wanted a course like this on Django ORM. Very well produced, with clear and captivating classes.
Craig
February 22, 2023
Xander goes into great depth aobut ORM. Very useful are sections on Sinals, various User model patterns as well as using if one wants Docker for PostgreSQL. If too thorough ins some lectures, jsut pick and choose. Well woth doing. Thanks!
Cesar
January 15, 2023
From the minute you said to install python on the root of the main drive, I was like "Yep, this is going to be good and thorough".
Antony
November 18, 2022
7.5 hrs in, my thoughts so far: Pros: ✅ Video quality is well above average. No difficulty seeing the presenters screen. ✅ Sound quality, also better than average. No problems varying volume levels, background noises etc. ✅ Lesson lengths- never too long - just right. ✅ Instructor is clearly knowledgable and has a style of communication that is well suited for the format. ✅ I have already learned a few things not covered in the other Django best-sellers on Udemy. What would make it better? A better sense of logical chronological progression. Examples in code do not seem to follow a strict enough chronology from one lesson to the next. One feels jostled about quit often. Coding along with the presenter is more of an endeavor in this course than is typical in my experience. Would recommend but with the following caveats: 1. Not at full price, wait for a sale. 2. Not for absolute beginners in either Django or Python unless you are experienced in other languages. I still have 2/3 of the course to complete so if any of my opinions change I will update at the time of finish.
Gillian
November 3, 2022
So far it certainly has the information, though I feel it isn't well designed for people who have a working knowledge of django. Unfortunately the instructor is quite dry, and though he explains things thoroughly I have a hard time paying attention. Though he provides an inventory code base to follow along with, you don't get to code it along with him and I find that disconnects me from what is happening. That said, there appears to be information in here that I would not get from other courses, so I persist. Perhaps it is simply a matter of style.
Hafid
July 27, 2022
THE BEST COURSE Django - ORM EVER EXCELLENT, I'm so happy and satisfied of the content proposed in this course, with you now I understand the ORM & Django under the hood in a simple a clear way is just amazing. looking forward for the next series.
Nilton
July 10, 2022
Excellent course, Zander! Especially if you want to understand beyond the basics. Keep up the fantastic work here and on youtube as well. Thank you, my friend.
Max
July 7, 2022
Excellent job, Zander! Keep up the outstanding work. Can't thank you enough for this kind of content. I hope you're going to add a section on async (Django 4.1 adds async-compatible interface to QuerySet).
Christian
July 5, 2022
This course is amazing! You'll surely learn something in every video. I'm glad each videos are not too long so it's easier for me to grasp every lessons being taught by the instructor. Looking forward to finish this course in no time.
David
June 30, 2022
The pace is good - even though this is a review of what I know the instructor kept me interesting and I followed along.
Yunus
June 29, 2022
Hello, I wanted to support you here as well as on youtube. Because you always deserve it. And great content as always

Charts

Price

Django Database ORM Mastery 2024 - Price chart

Rating

Django Database ORM Mastery 2024 - Ratings chart

Enrollment distribution

Django Database ORM Mastery 2024 - Distribution chart
4721466
udemy ID
6/6/2022
course created date
10/8/2022
course indexed date
Bot
course submited by