Getting started
Installation
Creating environment
Create App
Django syntax
Tags
Conditional statements
Include
Admin Site Configuration
Registration of Models
Admin Site Customization
Admin Models
Model Admin Configuration
Inlines and Tabular Inlines
Admin Actions
Custom Admin Actions
Bulk Operations
Admin Customization
Admin Templates
Admin Views
Admin Widgets
extends tag
block tag
super function
if tag
for tag
url tag
csrf_token tag
length filter
upper filter
default filter
Passing data from views to templates
Template context processors
Cross-site scripting - Wikipedia
Cross-Site Scripting (XSS) - OWASP Foundation
What is cross-site scripting? - Cloudflare
Cross-site scripting (XSS) - MDN Web Docs Glossary
What is cross-site scripting (XSS) and how to prevent it? - PortSwigger
Cross-Site Request Forgery (CSRF) - OWASP Foundation
SQL Injection - OWASP Foundation
Clickjacking - OWASP Foundation
Gunicorn
uWSGI
Nginx
Database Setup and Management - Django Documentation
Static Files - Django Documentation
Models
Views
Templates
URL Patterns
URL Namespacing
URL Reversing
Django Forms
User Model
Authentication System
Authorization
Middleware
Signals
Caching
Testing
Internationalization
Localization
Django Admin
Django ORM
Django Migrations
Django Deployment
Django Ecosystem
Writing tests for individual components
Using TestCase class
Testing interactions between components
Testing views and templates
Testing application behavior from a user's perspective
Using tools like Selenium for browser automation
Celery
Task Queues
Worker Management
Task Execution
Django Channels
WebSockets
Consumer Classes
Routing
Django REST Framework
API Endpoints
Serialization
Authentication
Django Allauth
Social Authentication
User Management
Django Debug Toolbar
Debugging Tools
Performance Monitoring
Django Crispy Forms
Form Rendering
Field Rendering
Project 1
Project 2
Project 3
Project 4
Resources
Model Definitions
Model Fields
Model Managers
Model Queries
Relationships
One-to-One Relationships
One-to-Many Relationships
Many-to-Many Relationships
Queries
QuerySet API
Filtering
Ordering
Aggregation
Annotations
Migrations
Migration Creation
Migration Execution
Schema Changes
Creating forms in templates
Handling form submissions in views
Built-in form field validation
Custom form validation
Customizing form field widgets
Using different widget types
Processing incoming requests
Modifying requests
Generating responses
Modifying responses
Handling exceptions raised by views
Logging exceptions
Returning custom error pages
Caching responses
Controlling cache headers
Invalidating cached responses
Defining custom signals
Sending signals
Registering signal receivers
Handling signals
Using the built-in cache framework
Configuring in-memory caching backends
Caching database queries
Invalidating cached data
Caching rendered templates
Controlling template cache expiration