They are warnings from pylint.
You can tell pylint to ignore that error by create file .pylintrc in your folder
Especially from a security point of view, do not use f-strings (or similar measures) for building your SQL query, you might risk SQL injections. The placeholders in the query ensure the value is formatted in just the right way, and any special characters are escaped properly, so the structure cannot be changed by the values.
If I remember correctly, David ...
Here are the stumbling blocks I faced:
SQLAlchemy Dependencey Issues:
Postgres path not set I have written about this in another question (see link), but in a nutshell you need to add the path to postgres binaries otherwise SQLAlchemy will not install properly.
psycopg2 has issues on my version of MacOS, and by issues I mean it would not install via pip - ...
If you don't use bound variables with the CS50 sql module, sqlite will read num_sell as a column name, thus the "no such column" error. You need to use bound variables ostensibly to prevent sql injection. Review the last 30 seconds of the register walkthrough for sample syntax, or the login function in application.py.