1
Introduction to Django
Get started with Django web framework. Learn what Django is, why to use it, understand its architecture (MTV), and set up your development environment.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Understand what Django is and why use it
• Learn Django's architecture (MTV - Model-Template-View)
• Set up Python, virtual environment, and install Django
• Create a Django project using django-admin startproject
• Understand project structure (settings, urls, wsgi/asgi, apps)
• Run development server and test basic request-response
2
Django Web Framework
Explore Django as a web framework. Learn about installed apps, project settings, directory structure, Django lifecycle, and manage commands.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Understand Django as a web framework
• Learn about installed apps and project settings
• Explore directory structure and Django project/app conventions
• Understand Django lifecycle: request → URL routing → view → response/template
• Master Django CLI / manage commands
3
URLs and Views
Master URL routing and views in Django. Learn to configure URLs, connect them to views, and create function-based views that handle requests and return responses.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Configure urls.py using path() and re_path()
• Understand URL patterns and urlpatterns
• Connect URLs to views
• Create function-based views
• Handle request data (GET/POST) and understand request object
• Use URL names and reverse URLs
4
Django Templates
Learn Django Template Language (DTL) to create dynamic web pages. Master template inheritance, variables, tags, filters, and template organization.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Understand Django Template Language (DTL)
• Use variables, tags, and filters in templates
• Implement template inheritance with base templates and blocks
• Render dynamic data using templates
• Organize templates with includes and partial templates
• Understand escaping, autoescape, and safe output
5
Static Files
Learn to manage static files (CSS, JavaScript, images) in Django. Configure static files settings and serve them during development and production.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Understand what static files are in Django
• Configure static files (STATICFILES_DIRS, STATIC_URL, collectstatic)
• Reference static files in templates using {% static %} tag
• Serve static files during development
• Learn basics of deploying static files for production
6
Django Model
Master Django models to define your database schema. Learn field types, model metadata, and how to create and apply migrations.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Define models using classes inheriting models.Model
• Understand field types and options (CharField, IntegerField, DateTimeField, etc.)
• Configure model metadata options (__str__, ordering, verbose names)
• Create and apply migrations (makemigrations, migrate)
• Understand model vs database table mapping
7
Django Forms / Model Forms
Create and handle forms in Django. Learn to build Form classes, ModelForm classes, render forms in templates, and process form submissions.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Understand why use forms in Django
• Create Form classes in forms.py
• Create ModelForm classes bound to models
• Render forms in templates (manual or {{ form.as_... }})
• Handle form submission (POST), request data, and save form data to models
8
Form Validation
Implement form validation in Django. Learn built-in validation, custom validation methods, error handling, and CSRF protection.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Use built-in validation (required fields, data types, field-level validation)
• Implement custom validation (overriding clean_field() and clean())
• Display validation errors in templates
• Handle invalid form submission gracefully
• Understand and implement CSRF protection
9
Django CRUD Operations
Implement Create, Read, Update, Delete functionality for your models. Build views and templates for listing, detail views, and data manipulation.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Implement Create, Read, Update, Delete functionality for models
• Create views and templates for listing data (Read)
• Build detail views for individual records
• Create forms for Create and Update operations
• Implement Delete functionality with confirmation
• Add pagination and simple search/filter if needed
10
Django ORM (Object Relational Mapper)
Master Django ORM to query your database efficiently. Learn QuerySet methods, relationships, aggregations, and advanced queries.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Query database using Django ORM: .all(), .filter(), .get(), .exclude(), .order_by()
• Understand QuerySet chaining, slicing, and evaluation
• Work with relationships: ForeignKey, OneToOneField, ManyToManyField
• Query related data across relationships
• Use aggregation, annotation, and advanced queries
• Manage migrations and schema changes
11
User Authentication
Implement user authentication in Django. Learn to use built-in authentication system, create registration and login forms, and manage user sessions.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Use built-in authentication system: User model, login/logout
• Create user registration (sign up) and login forms
• Handle sessions and user authentication
• Understand password hashing and security basics
• Implement access control using login_required decorator
• Learn permission/authorization basics
12
CSV
Handle CSV files in Django. Learn to import and export data, parse CSV files, validate data, and handle errors during CSV operations.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Handle CSV files in Django (import/export)
• Export QuerySet data to CSV for download
• Import CSV data: file upload, parsing with Python's csv module
• Validate CSV data before saving to database
• Handle exceptions and errors during CSV import/export
13
Session Management
Understand and implement session management in Django. Learn to store and retrieve session data, configure session settings, and use sessions for user-specific features.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Understand sessions in Django: purpose and working
• Use request.session to store/retrieve data
• Configure session settings and expiry
• Understand differences between sessions and cookies
• Use sessions for features like "remember me", user-specific data, flash messages
14
Django Middleware
Learn about Django middleware and how it processes requests and responses. Understand built-in middleware and create custom middleware.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Understand what middleware is and how Django processes requests/responses
• Learn about built-in middleware examples
• Configure middleware in settings
• Write simple custom middleware
• Understand use-cases: logging, security headers, request/response processing
15
Database
Configure and manage databases in Django. Learn database setup, connection settings, migrations, and database management best practices.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Set up and configure database in Django settings (SQLite, MySQL, Postgres)
• Connect Django models to actual database
• Apply migrations and manage DB schema changes
• Understand database management basics (backup/restore, migration strategy)
• Configure Django database settings: ENGINE, NAME, USER, PASSWORD, HOST, PORT