deployment-test/app/routes.py
2025-08-07 21:29:26 +01:00

48 lines
1.4 KiB
Python

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/<int:id>')
def delete(id):
user = User.query.get(id)
if user:
db.session.delete(user)
db.session.commit()
return redirect("/")
@bp.route('/edit_user/<int:id>',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)