Opleiding: Django Web Development
In the course Django Web Development participants learn how to use this Web Application Framework for developing Python Web Applications.Django Architecture
The course starts with an overview of the architecture of the Framework, how it can be installed and how the Admin application can be used.
MVT Pattern and Model Mapping
Next the MVT pattern is treated and how Models are mapped to the database. Also the various Field types and the data access API are discussed.
Views, URL's and Templates
Next attention is paid to views and URLs and it is shown how regular expressions are used in the mapping to views. Also the use of templates in the construction of views is discussed.
Django Forms
Then the focus of the course turns to the creation of Forms used to collect input from the user. Attention is also paid to the validation of Forms and the use of the so-called Model Forms derived from Model classes. Object Relational Mapping and performance optimization when accessing the database is discussed as well.
Advanced Topics
Finally some more advanced topics are on the program such as authentication in Django, working with the REST Services and Unit Testing. By the end of the course the participants will have built a complete Application that includes a REST interface.
Audience Django Web Development Course
The Django Web Development course is designed for developers who want to use the Framework for creating Web Applications in Python.
Prerequisites Course Django Web Development
To participate in this course knowledge of Web Applications and knowledge of and experience with programming in Python is required.
Realization Training Django Web Development
The theory is treated on the basis of presentation slides. Demos are used to clarify the concepts further. During the course there is ample opportunity to practice. The course material is in English. The course times are from 9.30 up and to 16.30.
Certification Course Django Web Development
Participants receive an official certificate Django Web Development after successful completion of the course.
Modules
Module 1 : Django Intro
- What is Django?
- Django History
- Framework Features
- Python CGI Script
- MVC Design Pattern
- Creating Projects
- Project Settings
- Project URL’s
- Running Project
- Testing Project
- Admin Application
- Setup Databases
- Activate Admin Site
Module 2 : Django Models
- Mapping Models
- Create Application
- Create Models
- Migrations
- SQL for Models
- Three Step Migration Practice
- Data Access API
- String Representation
- Fields
- Creating and Accessing Objects
- Enabling Admin Interface
- Customize Admin Form
- Adding Related Objects
Module 3 : Views and URL's
- View Basics
- URL Mapping
- Django MVT Pattern
- URL Arguments
- URL Utility Functions
- Non-Named Group Matching
- Named Groups
- View Functions
- Mapping to Views
- HTTP Request Object
- HTTP Response Object
- redirect Shortcut
- get_object_or_404
Module 4 : Django Templates
- The Template System
- Template Variables
- render_to_repsonse Shortcut
- render Shortcut
- Context Variable Lookup
- List in Template
- Template Tags
- If and For Tag
- Filters
- Template Inheritance
- Child Templates
- Autoescape
- Loading Templates
- Class Based Views
- Specialized Views
Module 5 : Django Forms
- Form Objects
- Using Form in View
- Processing Form Data
- Display Form using Template
- Display using Paragraphs
- Display using Table
- Validating Forms
- Customize Form Template
- Rendering Error Messages
- Looping over Form Fields
- Rendering Forms
- Core Fields Argument
- ModelForms
- Model and Form
- Customize Model Forms
Module 6 : Django Security
- Web Security Essentials
- Bad Practices Web Security
- Security Features
- Cross Site Scripting
- XSS Protection
- Cross Site Request Forgery
- CSRF Protection
- Clickjacking Protection
- SQL Injection Protection
- Cookies and Files
- Email Header Injection
- Django Authentication
- Authenticating Users
- Permissions and Authorization
- Authentication in Web Requests
Module 7 : Django REST
- What is REST?
- REST Services
- REST Examples
- Resource URI’s
- REST challenges
- Django Solutions
- Includes
- Installing DRF
- Core Components
- Django Counterparts
- Building our Demo API
- Customizing
- Resources
Module 8 : Advanced Topics
- Sessions
- Session Support
- Messages Framework
- Using Messages
- Sending Email
- Emitters
- Testing
- Unit Testing
- ORM advanced
- Aggregation and annotation
- Reporting/Data analysis application
- Database performance profiling
- Signals to denormalise

