1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
from flask import *
from tinydb import TinyDB
import psycopg2
import os
app = Flask(__name__)
def conn():
return psycopg2.connect(os.environ.get("DATABASE_URL") or "dbname=questbook user=postgres")
def table_to_dict(table):
return { "email": table[0], "name": table[1], "message": table[2] }
@app.route("/")
def home():
cur = conn().cursor()
cur.execute("SELECT email, name, message FROM messages;")
posts = map(table_to_dict, cur.fetchall())
return render_template("home.html", posts = posts)
@app.route("/message", methods=["POST"])
def create_message():
form = request.form
local_conn = conn()
cur = local_conn.cursor()
cur.execute("insert into messages (email, name, message)\n values (%s, %s, %s)", (form["email"], form["name"], form["message"]))
local_conn.commit()
return redirect("/")
|