Description
In this course, you will learn :
- Django is a Python web development framework that teaches you how to use Python for web development.
- Create real-world projects and apply what you've learned in a full-fledged blog website created in the course.
- To get started quickly, choose between the full course and the included course summary.
Syllabus :
1. Course Setup
- Installing Python & Django
- Creating a Django Project
- Installing an IDE
- Analyzing the Created Project
- Starting a Development Server
- Django Apps
- Analyzing the Created Project
- More Advanced Setup Steps
2. URLs & Views
- Creating a New Project
- What are URLs & Views?
- Creating a First View & URL
- Adding More Views & URLs
- Dynamic Path Segments & Captured Values
- Path Converters
- Adding More Dynamic View Logic
- Redirects
- The Reverse Function & Named URLs
- Returning HTML
- Practicing URLs, Views & Dynamic View Logic
3. Templates & Static Files
- Rendering Templates
- Template Language & Variable Interpolation
- Exercise Solution
- Filters
- The Django Visual Studio Code Extension
- Tags & the "for" Tag
- The URL Tag for Dynamic URLs
- The "if" Tag for Conditional Content
- Template Inheritance
- Exercise Solution
- Including Partial Template Snippets
- More on the Django Template Language (DTL)
- 404 Templates
- Adding Static Files
- Adding Global Static Files
- Adding CSS Styling
- Building Static URLs Dynamically
4. Course Project: Building a Blog - The Basics15 lectures • 1hr 35min
- Planning the Project
- Adding URLs & Views
- Adding First Templates
- Template Content & Static Files
- Adding Images as Static Files
- Adding the "All Posts" Page & Style
- Linking the Pages
- Adding the "Single Post" Page
- Adding Dummy Data to the "Views" File
- Special Template Features & Syntax
- Adding a Single Post Page
- Adding a 404 Page
5. Data & Models
- Different Kinds of Data
- Understanding Database Options
- Understanding SQL
- Django Models
- Creating a Django Model with Fields
- Migrations
- Inserting Data
- Getting all Entries
- Updating Models & Migrations
- Blank vs Null
- Updating Data
- Deleting Data
- Create Instead of Save
- Querying & Filtering Data
- "or" Conditions
- Query Performance
- Bulk Operations
- Preparing Templates
- Rendering Queried Data in the Template
- Rendering the Details Page
- Model URLs
- Adding a Slugfield & Overwriting Save
- Using the Slug & Updating Field Options
- Aggregation & Ordering
6. Admin
- Logging Data Into the Admin Panel
- Adding Models to the Admin Area
- Configuring Model Fields
- Configuring the Admin Settings
- More Config Options
7. Relationships
- Understanding Relationship Types
- Adding a one-to-many Relation & Migrations
- Working with Relations in Python Code
- Cross Model Queries
- Managing Relations in Admin
- Adding a one-to-one Relation
- One-to-one Python Code
- One-to-one & Admin Config
- Setting-up many-to-many
- Using many-to-many in Python
- Many-to-many in Admin
- Circular Relations & Lazy Relations
8. Course Project - Building a Blog: Data & Models
- Planning the Data Models
- Adding a Post Model
- Author Model & one-to-many
- Tag Model many-to-many
- Registering Models for Admin
- Migrations & Admin Login
- Adding Data via Admin
- Configuring the Admin Panel
- Fetching Posts for Starting Page
- All Post & Single Post Pages
- Using Author & Tags Data
9. Forms
- Adding a Dummy Form
- Get & Post Requests
- CSRF Protection
- Handling Form Submission & Extracting Data
- Manual Form Validation & the Problems with "that"
- Using the Django Form Class
- Validation with Django Forms
- Customizing the Form Controls
- Customizing the Rendered HTML
- Adding Styling
- Adding More Form Controls
- Storing Form Data in a Database
- Introducing Modelforms
- Configuring the Modelform
- Saving Data with a Modelform
- Class Based Views
10. Class Views
- Adding Templates
- TemplateView
- Using the TemplateView
- Showing a Detail Template
- The ListView
- DetailView
- When to Use Which View
- FormView
- CreateView
11. File Uploads
- Making the File Upload Work
- Storing Uploaded Files Naive Approach
- Adding a Form with a Filefield
- Using Models for File Storage
- Using an Imagefield
- Using a CreateView
- Working with the File Field
- Serving Uploaded Files
12. Sessions
- Problem Description
- What are Sessions?
- Enabling & Configuring Sessions
- Adding a New View
- Storing Data in Sessions
- Which Kind of Data Should be Stored
- Using Session Data
- Safely Accessing Session Data
13. Course Project: Building a Blog - Forms, Files & Sessions
- Adding an Imagefield to the Post Model
- Serving Uploaded Files
- Converting Views to Class Based
- Adding a Comment Model
- Adding a Comment Form
- Styling the Comment Form
- Handling Comment Form Submission
- Comment Form Validation Styles
- Outputting Comments
- Styling the Comments
- Comment Admin
- Read Later Starting Setup
- Managing Read Later via Session
- Read Later Page & Styling
- Finishing the Read Later Feature
- Useful Resources & Links
14. Deployment
- Deployment Considerations
- Which Database
- Django & Web Servers
- Serving Static Files
- Choosing a Hosting Provider
- Getting Started & Revisiting Settings
- Collecting Static Files
- Serving Static Files
- A Note About Migrations
- Locking in Dependencies
- More on Virtual Environments
- Using Environment Variables
- Deploying with Elastic Beanstalk
- SSL & Custom Domains
- Connecting PostgreSQL
- Serving Static Files Separately
- Serving Static Files via S3
- Moving File Uploads to S3