Integrating SQL into our application
Converting our application to a SQL backend will be no small task. The application was built around the assumption of the CSV files, and although we've taken care to separate our concerns, many things are going to need to change.
Let's break down the steps we'll need to take:
- We'll need to write a SQL model
- Our
Application
class will need to use the SQL model - The record form will need to be reordered to prioritize our keys, use the new lookups, and autopopulate using the database
- The record list will need to be adjusted to work with the new data model and primary keys
Along the way, we'll need to fix other bugs or implement some new UI elements as needed. Let's get started!
Creating a new model
We'll start in models.py
by importing psycopg2
and DictCursor
:
import psycopg2 as pg from psycopg2.extras import DictCursor
DictCursor
will allow us to fetch results in Python dictionary rather than the default tuples, which is easier to work with in our application.
Begin...