Course Outline
 

 

Introduction to Django
  • Describing the basics of using a web framework for development
  • Understanding he concepts of MVC (Model-View-Controller)
  • Detailing the evolution of Django
Getting Started
  • Explaining the steps for installation of Django on Linux and Windows
  • Illustrating the setting database and project detailing project’s components
The Basics of Dynamic Web Pages
  • Illustrating views and their usage for dynamic content
  • Describing URLconfs and view mapping
  • Detailing the request handling process of Django
  • Explaining the usage of URL patterns and Errors
The Django Template System
  • Understanding the concepts and usage of template system of Django
  • Describing the template tags and filters in Django
  • Detailing the usage of template in views and their loading
Interacting with a Database: Models
  • Explaining the MTV (Model Template View) pattern of Django
  • Describing the process of configuring a database
  • Illustrating the steps to define a model and installing it
  • Understanding the data and database schema access and it’s management in Django
The Django Administration Site
  • Explaining the usage, access and customization of the admin interface
Form Processing
  • Describing the process of form creation and it’s processing
  • Explaining the techniques to apply validation rules to form
  • Illustrating the steps to customize layout and formatting of forms
  • Detailing forms creation from models
Advanced Views and URLconfs
  • Explaining the concepts of function imports and multiple view prefixes
  • Describing the usage of named groups for regex
  • Customizing views functions to pass extra options or default arguments
  • Illustrating the inclusion of other URLconfs
Generic Views
  • Explaining the usage and application of generic views and extending them
Extending the Template Engine
  • Using requestcontext and context processors for specifying variable in each context
  • Describing the techniques of extending templates by template library, custom template filters and loaders
Generating Non-HTML Content
  • Explaining the method to produce different MIME-types like csv, pdf, rss and sitemap from views
Sessions, Users, and Registration
  • Understanding cookies, session framework, users and authentication in django
  • Explaining the implementation of permissions, groups, messages, and profiles
Caching
  • Describing the process of setting up cache for faster response
  • Detailing the usage of low level cache API for caching in django
  • Explaining the usage of vary and cache headers
Other Contributed Subframeworks
  • Exploring the django standard library for add-ons
  • Describing the sites framework, flatpages, redirects and CSRF
Middleware
  • Detailing the installation and methods in middleware
  • Describing the built-in middleware in django
Integrating with Legacy Databases and Applications
  • Explaining the usage of inspectdb utility
  • Detailing the steps to specify authentication back-ends and integrating with legacy web applications
Extending Django's Admin Interface
  • Describing the steps to customize admin templates and admin views in django
Internationalization
  • Illustrating the usage of standard translation functions
  • Describing the creation of language files and language preference setting in django
  • Explaining the usage of translations in javascript
Security
  • Explaining techniques to counter different types of web attacks like SQL injection, cross-site scripting, cross-site request forgery, email header injection, directory traversal and exposed error messages
Deploying Django
  • Describing the basic configuration of single and multiple django installations
  • Explaining implementation of scaling, load balancing and redundancy in django
  • Illustrating techniques for performance tuning