Book Image

Flask Framework Cookbook - Third Edition

By : Shalabh Aggarwal
4.3 (4)
Book Image

Flask Framework Cookbook - Third Edition

4.3 (4)
By: Shalabh Aggarwal

Overview of this book

Discover what makes Flask, the lightweight Python web framework, popular, as you delve into its modular design that enables the development of scalable web apps. With this practical guide, you'll explore modern solutions, recommended design patterns, and best practices for Flask web development. Updated to the latest version of Flask and Python, this third edition of the Flask Framework Cookbook moves away from the outdated libraries, updates content to incorporate new coding patterns, and introduces recipes for the latest tools. You'll explore different ways to integrate with GPT to build AI-ready Flask applications. The book starts with an exploration of Flask application configurations and then guides you through working with templates and understanding the ORM and view layers. You’ll also be able to write an admin interface and get to grips with testing using the factory pattern, debugging, and logging errors. Then you’ll discover different ways of using Flask to create, deploy, and manage microservices using AWS, GCP, and Kubernetes. Finally, you’ll gain insights into various deployment and post-deployment techniques for platforms such as Apache, Tornado, and Datadog. By the end of this book, you'll have acquired the knowledge necessary to write Flask applications that cater to a wide range of use cases in the best possible way and scale them using standard industry practices.
Table of Contents (20 chapters)
1
Part 1: Flask Fundamentals
6
Part 2: Flask Deep Dive
12
Part 3: Advanced Flask

Uploading files via forms

Uploading files via forms, and doing it properly, is usually a matter of concern for many web frameworks. In this recipe, we will see how Flask and WTForms handle this for us in a simple and streamlined manner.

How to do it...

In this recipe, we will implement a feature to store product images while creating products. First, we will start with the configuration bit. We need to provide a parameter to our application configuration – that is, UPLOAD_FOLDER. This parameter tells Flask about the location where our uploaded files will be stored.

Tip

One way to store product images can be to store images in a binary-type field in our database, but this method is highly inefficient and never recommended in any application. We should always store images and other uploads in a filesystem, and store their locations in a database using a string field.

Add the following statements to the configuration in my_app/__init__.py:

import os
ALLOWED_EXTENSIONS...