from flask import Flask, render_template, request, redirect import mysql.connector import os mydb = mysql.connector.connect( host=os.environ.get("HOST"), user=os.environ.get("USER"), password=os.environ.get("PASSWORD"), database="new_trello" ) mydb.autocommit = True cursor = mydb.cursor() app = Flask(__name__) @app.get("/") def show_all(): cursor.execute('SELECT * FROM items WHERE parent_id IS NULL') return render_template('show.html', cursor=cursor) @app.post("/") def create(): if 'parent_id' in request.form: cursor.execute('INSERT INTO items (title, description,parent_id) VALUES(%s,%s,%s)', [request.form['title'],request.form['description'],int(request.form['parent_id'])]) return redirect('/'+request.form['parent_id']) else: cursor.execute('INSERT INTO items (title, description) VALUES(%s,%s)', [request.form['title'],request.form['description']]) return redirect('/') @app.post("/") def delete(id): # print(request.args.get('_method')) # TODO: deal with deleting item that has children cursor.execute('DELETE FROM items WHERE id=%s LIMIT 1', [id]) return redirect('/') @app.get("/") def show(id): cursor.execute('SELECT * FROM items WHERE id=%s', [id]) parent=cursor.fetchone() cursor.execute('SELECT * FROM items WHERE parent_id=%s',[id]) return render_template('show.html', parent=parent, cursor=cursor)