"""Example web app that connects to PostgreSQL.""" from io import StringIO import psycopg from flask import Flask app = Flask(__name__) con = psycopg.connect( host="data.cs.jmu.edu", user="demo", password="demo", dbname="world" ) cur = con.cursor() @app.route("/") def hello_world(): return "
Hello, World!
" @app.route("/country/")
def country_info(code: str):
_ = cur.execute(
"SELECT name, continent, region, population FROM country WHERE code = %s",
(code.upper(),),
)
row = cur.fetchone()
if not row:
return "Country not found
"
name, cont, reg, pop = row
out = StringIO()
_ = out.write(
f"{name} is in {cont} in the {reg} region.
"
)
_ = out.write(
f"{name}'s population {pop:,d}.
"
)
return out.getvalue()
@app.route("/codes")
def multi_country():
_ = cur.execute("SELECT name, code population FROM country")
return f"{"".join(
f'- {name} {code}
'
for (name, code) in cur.fetchall()
)}
"
if __name__ == "__main__":
app.run(debug=True)