Introduction
Flask has been designed to be flexible enough to support any database. The simplest way would be to use the direct sqlite3 package, which is a DB-API 2.0 interface and does not actually give an ORM. Here, we will use SQL queries to talk with the database. This approach is not suggested for large projects as it can eventually become a nightmare to maintain the application. Also, with this approach, the models are virtually non-existent and everything happens in the view functions, where we write queries to interact with the DB.
In this chapter, we will talk about creating an ORM layer for our Flask applications with SQLAlchemy for relational database systems, which is recommended and widely used for applications of any size. Also, we will have a glance over how to write a Flask app with the NoSQL database system.
Note
ORM refers to Object Relational Mapping/Modeling and implies how our application's data models store and deal with data at a conceptual level. A powerful ORM...