Flask is a web application framework written in Python. Often referred to as a micro framework, it aims to keep the core of an application simple yet extensible. Flask is based on the Werkzeug WSGI toolkit (Web Server Gateway Interface toolkit which implements requests, response objects, and other utility functions) and Jinja2 template engine (a web templating system which combines a template with a certain data source to render dynamic web pages), both of which are Pocco projects.
The core competencies include understanding of the Jinja2 template engine, ability to process the request data by importing it from the Flask module, ability to work with form data, understanding of cookies and sessions, ability to use the redirect() function, among others.
- Templates - Deep understanding of the Jinja2 template engine, on which Flask is based. Familiarity with delimiters, use of conditional statements in the template, loop constructs, among others.
- Form Data - Ability to work with form data, such that form data received by the triggered function can collect it in the form of a dictionary object and forward it to a template to render it on a corresponding web page.
- Cookies and Responses - An understanding of using cookies (to remember and track data pertaining to a client’s usage for better visitor experience and site statistics) using request object, get() method of request.cookies attribute - used to read a cookie, and managing session data, which is stored on top of cookies.
- Redirect & Errors - Ability to use the redirect() function to return a response object and redirect the user to another target location with specified status code. Ability to use abort() function with an error code.