Course : Python web development with Flask

Practical course - 4d - 28h00 - Ref. FLK
Price : 2580 CHF E.T.

Python web development with Flask



New course

This course will teach you how to develop web applications with Flask, a lightweight, flexible Python framework. From installation to production, you'll learn how to manage routes, forms and databases, as well as how to authenticate and secure your application.


INTER
IN-HOUSE
CUSTOM

Practical course in person or remote class
Available in English on request

Ref. FLK
  4d - 28h00
2580 CHF E.T.




This course will teach you how to develop web applications with Flask, a lightweight, flexible Python framework. From installation to production, you'll learn how to manage routes, forms and databases, as well as how to authenticate and secure your application.


Teaching objectives
At the end of the training, the participant will be able to:
Understanding the Flask framework and its architecture
Create and configure a Flask application
Master the management of routes, HTTP requests and Jinja2 templates
Managing forms, sessions and databases with Flask-SQLAlchemy
Set up an authentication system and secure a Flask application
Deploying a Flask application on an online server

Intended audience
The course is designed for developers wishing to acquire an in-depth knowledge of the basics of the Flask framework.

Prerequisites
A good command of Python, basic HTML/CSS, and a general understanding of the client-server model and HTTP requests.

Course schedule

1
Introduction to Flask

  • Introduction to the Flask framework and its use cases.
  • Comparing Flask and Django.
  • Understand the client-server model and MVC architecture.
  • WSGI and the Jinja2 template engine.
Hands-on work
General presentations.

2
Installation and first application

  • Install and configure Flask on Windows and Linux.
  • Creation of a first Flask application ("Hello World").
  • Change Flask server port and IP address.
Hands-on work
Install Flask and create a first application displaying "Hello World".

3
Route and query management

  • Define and manage routes with @app.route.
  • Use of dynamic rules in URLs.
  • HTTP method management (GET, POST, PUT, DELETE).
  • Redirections and error handling (404, 500).
Hands-on work
Create different routes with @app.route, use dynamic rules and test HTTP methods.

4
Templates and digital signage

  • Introduction to Jinja2 templates.
  • Inherit templates and use placeholders.
  • Inclusion of CSS and JavaScript files in a Flask project.
  • Dynamic display with variables and loops in Jinja2.
Hands-on work
Use Jinja2 to display data dynamically and organize templates with inheritance.

5
Forms and session management

  • Introduction to the Request object and management of data sent by a form.
  • Use of cookies and Flask sessions.
  • Forms management with Flask-WTF.
  • User input validation and error management.
  • Using Flask-Flash to display messages.
Hands-on work
Create a form with Flask-WTF, validate inputs and store data in session.

6
Database and Object-Relational Mapping (ORM)

  • Introduction to SQLAlchemy and Flask-SQLAlchemy.
  • Configure and connect to SQLite, MySQL and PostgreSQL.
  • Definition of models and relationships (One-to-Many, Many-to-Many).
  • Creating and managing migrations with Flask-Migrate.
  • Execute SQL and ORM (Create, Read, Update, Delete) queries.
Hands-on work
Configure Flask-SQLAlchemy, create a database model and run CRUD queries.

7
Authentication and security

  • Setting up authentication with Flask-Login.
  • Creation of registration and login templates and forms.
  • Password hashing with Bcrypt and secure storage.
  • Managing roles and permissions with Flask-Principal.
  • Securing routes with @login_required.
Hands-on work
Set up a registration and login system with Flask-Login and secure passwords.

8
Deployment and maintenance

  • Deploying a Flask application on Heroku or AWS.
  • Configuration of environment variables and Procfile.
  • Logging and error monitoring.
  • Error handling (404, 500) and creation of custom error pages.
Hands-on work
Deploy the application on Heroku or AWS and configure logs and environment variables.


Dates and locations

Dernières places
Date garantie en présentiel ou à distance
Session garantie
From 15 to 18 September 2026
FR
Remote class
Registration
From 15 to 18 December 2026
FR
Remote class
Registration

REMOTE CLASS
2026 : 15 Sep., 15 Dec.