diff options
Diffstat (limited to 'src/expense/tracker/details.py')
-rw-r--r-- | src/expense/tracker/details.py | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/src/expense/tracker/details.py b/src/expense/tracker/details.py new file mode 100644 index 0000000..3849a81 --- /dev/null +++ b/src/expense/tracker/details.py @@ -0,0 +1,22 @@ +from flask import ( + render_template, +) +from flask_login import current_user, login_required +from sqlalchemy import func +from .blueprint import tracker +from ..model import Expense +from .. import db + + +@tracker.route("/details") +@login_required +def details() -> str: + """ + The detail table of all the expenses + """ + total = db.session.scalars( + db.select(func.coalesce(func.sum(Expense.amount), 0)).where( + Expense.user == current_user + ) + ).all() + return render_template("tracker/details.html", total=total) |