from flask import Blueprint, render_template,request,redirect,url_for from app.models import User,db bp = Blueprint('main', __name__) @bp.route("/") def home(): users = User.query.all() return render_template("home.html", users=users) @bp.route("/add_user",methods=['GET', 'POST']) def add(): if request.method =='POST': username=request.form.get('username') oldUser = User.query.filter_by(username=username).first() if oldUser is None: newUser=User(username=username) db.session.add(newUser) db.session.commit() return redirect('/') return render_template("adder.html") @bp.route('/delete_user/') def delete(id): user = User.query.get(id) if user: db.session.delete(user) db.session.commit() return redirect("/") @bp.route('/edit_user/',methods=['GET', 'POST']) def edit(id): message="" user=User.query.get(id) if request.method=="POST": newUsername=request.form.get('username') oldUser=User.query.filter_by(username=newUsername).first() if(oldUser is None): user.username=newUsername db.session.commit() return redirect('/') else: message="Username Already taken" return render_template("edit.html",user=user,message=message)