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 sending and receiving feedback using the flashing system of Flask, knowledge of file upload using HTML in Flask, ability to use the Flask-Mail extension, familiarity with installing Flask-Sijax, among others.
- Message Flashing - An understanding of sending and receiving feedback using the flashing system of Flask framework, which makes it possible to create a message in one view and render it in a view function, next(). Ability to use the flash() method to pass messages to the next request, and so on.
- File Uploading - Knowledge of file upload using HTML in Flask, with its encrypt attribute set to ‘multipart/form-data' and ability to use the secure_filename() function for secure file handling.
- Flask-Mail - Ability to use the Flask-Mail extension, which makes it very easy to set up a simple interface with any email server. Familiarity with parameters such as MAIL_SERVER, MAIL_PORT, MAIL_DEBUG, MAIL_DEFAULT_SENDER, among others.
- Interaction with SQLite and SQLAlchemy - An understanding of how Flask interacts with SQLite, and SQLAlchemy, a powerful OR Mapper that gives application developers the full power and flexibility of SQL.
- Flask-Sijax - Familiarity with installing Flask-Sijax to help easily bring Ajax to an application.