Skip to content
Snippets Groups Projects
Commit a62db460 authored by Michael Kyriakou's avatar Michael Kyriakou
Browse files

Refactored adding "Person" and getting all persons.

parent 69cd22c9
No related branches found
No related tags found
No related merge requests found
......@@ -92,23 +92,6 @@ def serve_static_files(path):
return send_from_directory('static', path)
# @app.route('/test-db')
# def test_db():
# try:
# rows = ""
# for user in db.session.query(User).all():
# rows += str(user) + " "
# for e in db.session.query(Entity).all():
# rows += str(e) + " "
# print("All rows:", rows)
# return rows
# except:
# return "App database error"
# Force secure connection
@app.before_request
def before_request():
......
from flask import Blueprint, render_template, request, redirect
from config import url_for2, FIRST_DB_BIND_NAME
from database.db import lookup_db_for_binding
from config import url_for2
from models import Person
db = lookup_db_for_binding(FIRST_DB_BIND_NAME)
home_blueprint = Blueprint('home', __name__, url_prefix='/')
......@@ -25,19 +22,18 @@ def persons():
if request.method == "GET":
try:
rows = ""
for e in db.session.query(Person).all():
for e in Person.get_all():
rows += str(e) + "<br>"
return rows
except:
return "App database error"
except Exception as e:
return f"App database error: {e}"
else:
firstname = request.form.get('firstname')
age = request.form.get('age')
try:
db.session.add(Person(firstname=firstname, age=int(age)))
db.session.commit()
Person.add(firstname, int(age))
return redirect(url_for2('.persons'))
except Exception as e:
return f"Could not add entity: {e}"
......@@ -15,5 +15,15 @@ class Person(db.Model):
age = db.Column(db.Integer, unique=False, nullable=False)
# surname = db.Column(db.String(40))
@classmethod
def add(cls, firstname, age):
db.session.add(Person(firstname=firstname, age=int(age)))
db.session.commit()
@classmethod
def get_all(cls):
return cls.query.all()
def __repr__(self):
return f'Person({self.id}, {self.firstname}, {self.surname}, {self.age})'
# The string representation of this object
return f'Person({self.id}, {self.firstname}, {self.age})'
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment