Django Training for Python Developers

Course Overview

This is a Django course for Python developers. The better you know Python, the easier it will be to learn Django. And one of the great things about learning Django is that it will help you improve your Python skills. Through more than 80 exercises and 100s of demos, you will learn to build a fully functional website using Python, Django 3.x, PostgreSQL, Visual Studio Code, GitHub, Amazon S3 (for media storage), SendGrid, and Heroku. You will learn:

  • Build simple web pages using Django templates.
  • Build a complete registration and authentication system.
  • Make certain features of the site only available to logged-in users.
  • Build forms that allow users to upload files. You will also learn to validate those files to make sure they are not dangerous. And you will learn to keep private files, like resumes, private.
  • Create sortable and searchable lists and tables of data, and to add pagination to long lists of data.
  • Allow users to add and edit data through web forms.
  • Use Ajax to make server requests without a full page refresh.
  • Use and customize Django admin, Django’s built-in administration interface.
  • Generate emails with Django.
  • Use Git and GitHub for source control.
  • Publish your website on Heroku, a popular hosting service.
  • Store media files, uploaded by users, using Amazon’s S3 service.

Other technologies used, but not taught, in the course include HTML, CSS, Bootstrap, JavaScript, and SQL. Experience with those technologies will serve you well, both in becoming a Django programmer, and in working through this course.

Course Benefits:

  • Getting the demo and exercise files.
  • Installing software.
  • Setting up a virtual environment.
  • Installing Django.
  • Creating your first Django website.
  • Git and GitHub.
  • Django Models.
  • Migrations.
  • Built-in template filters.
  • Built-in template tags.
  • Custom template filters and tags.
  • What is a “static” file?
  • Managing static files in Django.
  • The default user model.
  • Superusers.
  • Django admin.
  • Slugs.
  • Utility functions.
  • Overriding
  • Development settings.
  • SendGrid.
  • Sending email.
  • Form processing.
  • Form fields.
  • Widgets.
  • Validators.
  • Crispy Forms.
  • Models revisited.
  • Model fields.
  • Model field arguments.
  • ModelForms.
  • Many-to-one relationships.
  • Many-to-many relationships.
  • Registering.
  • Logging in and out.
  • Email.
  • Account management.
  • Resetting passwords.
  • Adding messages to pages.
  • Media files.
  • Media settings.
  • Uploading files.
  • Cleaning form data.
  • Safety concerns.
  • The filetype library.
  • Keeping uploaded files private.
  • The django-private-storage library.
  • FileField and ImageField.
  • Displaying uploaded images.
  • Amazon Simple Storage Service (Amazon S3).
  • Querying models.
  • Adding properties to models.
  • Ajax.
  • View functions.
  • Model constraints.
  • Loading data with fixtures.
  • Pagination.
  • Sorting.
  • Advanced querying.
  • Field Lookups.
  • Q Objects.
  • Search.
  • Aggregation.
  • Annotation.
  • The Django Debug Toolbar.
  • Prefetching queries.
  • Deploying to Heroku.
  • Django admin views.
  • Customizing title text, change lists, forms, and fieldsets.
  • Unregistering models.
  • Groups and permissions.
  • Additional learning.
  • Projects for practice.

Course Outline

  1. Demo and Exercise Files
  2. Recommended Software
  3. Running Python
  1. Welcome to the Server-side
  2. Google Chrome DevTools: Network Tab
  3. Creating the Virtual Environment
  4. Exercise: Creating a Virtual Environment and Installing Django
  5. Exploring the Django Source Code
  6. Creating a New Project
  7. Exercise: Hello, Django!
  8. Settings
  9. Django Apps
  10. Creating a New App
  11. Exercise: First Django App
  12. Exercise: Working with Templates
  13. Exercise: Creating an About Us Page
  2. Version Control Systems, Git, and GitHub
  3. Exercise: Setting Up VS Code, Git, and GitHub
  4. Exercise: Creating the Project
  5. Exercise: Creating a pages App
  6. Exercise: Creating the jokes App
  7. Models
  8. Exercise: Migrating
  9. Exercise: Creating a Model
  10. Types of Views
  11. Exercise: Creating a ListView
  12. Exercise: Creating a DetailView
  13. GET and POST Requests
  14. Exercise: Creating and Updating Jokes
  15. Deleting Objects
  16. Exercise: Deleting Jokes
  1. Exercise: Setting Up the Project
  2. get_context_data()
  3. Exercise: Adding Template Context
  4. Template Filter Basics
  5. Exercise: Adding Filters
  6. Most Useful Template Filters
  7. Template Filter Quick Reference
  8. Template Tag Basics
  9. Most Useful Template Tags
  10. Template Tag Quick Reference
  11. Custom Filters
  12. Exercise: Creating Custom Filters
  13. Custom Tags
  14. Exercise: Creating Custom Tags
  1. Static File Basics
  2. Exercise: Adding Static Files to Django Jokes
  3. Review of the Settings
  1. The Database
  2. Exercise: Setting Up PostgreSQL
  3. The Default User Model
  4. Exercise: Creating a Custom User Model
  5. Referencing the User Model
  6. Exercise: Getting Started with Django Admin
  7. Exercise: Adding the jokes Table to Django Admin
  8. Exercise: Installing the Django Admin Documentation Generator
  1. Slugs
  2. Exercise: Creating a Slug-generating Function
  3. Exercise: Changing Jokes to Use Slugs
  1. Transactional Email Services
  2. Exercise: Getting a SendGrid Account
  3. Exercise: Creating an Email Utility Function
  1. Form Processing
  2. Understanding Form Fields
  3. Exercise: Creating a Job Application Form
  4. Core Field Arguments
  5. Exercise: Building out the Application
  6. Typed Choice Fields
  7. Changing Widgets
  8. Exercise: Improving the Job Application Form
  9. Validators
  10. Exercise: Crispy Forms
  11. Exercise: Making the Joke Form Crispy
  1. Models
  2. Model Fields
  3. Model Field Arguments
  4. ModelForms
  5. Exercise: Creating a ModelForm
  6. Many-to-One Relationships
  7. Exercise: Adding Joke Categories
  8. Many-to-Many Relationships
  9. Exercise: Adding Joke Tags
  10. Exercise: Updating the Joke Templates
  11. Exercise: Tying Job Applications to Models
  1. The User-Registration Process
  2. Exercise: Getting Started with django-allauth
  3. django-allauth Templates
  4. Exercise: Making the Authentication Pages Crispy
  5. Exercise: Updating the _base.html Template
  6. Email Templates
  7. Exercise: Custom User Registration
  8. Exercise: Creating a My Account Page
  9. Exercise: Associating Users with Jokes
  10. Mixins
  11. Exercise: Restricting Joke Creating and Updating
  1. Message Framework
  2. Exercise: Adding Messages
  3. Exercise: Using SuccessMessageMixin
  4. Exercise: Adding Success Messages to the Joke Views
  5. Exercise: Adding a Success Message to JokeDeleteView
  1. Media File Basics
  2. Exercise: Adding Media Settings
  3. Exercise: Uploading a Resume
  4. Exercise: Checking File Type
  5. Exercise: Keeping Resume Files Private
  6. Exercise: Adding an ImageField to the Model
  7. Exercise: Displaying the Avatar
  8. Amazon Simple Storage Service (Amazon S3)
  9. Exercise: Setting Up Amazon S3
  10. Exercise: Static Settings in Development
  1. Useful Prerequisites
  2. Managers and QuerySets
  3. Indexing and Slicing QuerySets
  4. Checking for Existence
  5. Creating, Updating, and Saving Model Instances
  6. QuerySet Methods that Don’t Return QuerySets
  7. One-to-Many Relationships
  8. Many-to-Many Relationships
  9. Spanning Relationships
  10. Joke Voting
  11. Exercise: Adding a JokeVote Model
  12. Exercise: Registering the JokeVote Model
  13. Exercise: Adding Properties to the Joke Model
  14. Exercise: Rating Jokes Using Ajax
  15. Exercise: Adding a vote() View Function
  16. Exercise: Updating the URLConf
  17. Exercise: Updating the Templates
  18. Model Constraints
  19. Letting JavaScript Know if the User is Logged In
  1. Fixtures
  2. Exercise: Loading Data from a Fixture
  3. Exercise: Pagination
  4. Exercise: Ordering
  1. Field Lookups
  2. Q Objects
  3. Exercise: Filtering Results by Category, Tag, or Creator
  4. Exercise: Implementing Search
  5. Aggregation
  6. Exercise: Getting Joke Ratings
  7. Code Optimization
  8. Exercise: Installing and Using the Django Debug Toolbar
  9. Brief Introduction to Annotation
  10. Viewing SQL Used in QuerySets
  1. Where to Host Your Django Site
  2. Exercise: Deploying to Heroku
  1. Django Admin Views
  2. Exercise: Customizing Titles and Headers
  3. ModelAdmin Attributes that Affect the List View
  4. Exercise: Creating a Custom ModelAdmin Base Class
  5. Exercise: Customizing the Django Admin List View
  6. Lists vs. Tuples
  7. ModelAdmin Attributes that Affect Forms
  8. Exercise: Customizing Django Admin Form Views
  9. Customizing Fieldsets
  10. Exercise: Modifying the CustomUserAdmin Class
  11. Adding Calculated Read-only Fields
  12. Exercise: Adding a Link to the Change Password Form
  13. Exercise: Unregistering Models
  14. Exercise: Django Admin Groups and Permissions
  1. Additional Learning
  2. Additional Projects

₦ 50,000

  • Learn at your own pace with 24/7 access
  • Duration: 1 year
× How can we help you?