summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorstilbruch <stilbruch@protonmail.com>2022-04-24 20:20:49 -0500
committerstilbruch <stilbruch@protonmail.com>2022-04-24 20:20:49 -0500
commit34548b1273d1e5a3a8140dd41f23d68e2e742301 (patch)
tree13f84acd64b2d40220a4e4cc883cc200d7d70f66
parent0bcfd4a9a26d66af8a44ff36686b54ad2572d9e1 (diff)
downloadStrengthy-34548b1273d1e5a3a8140dd41f23d68e2e742301.tar.xz
Strengthy-34548b1273d1e5a3a8140dd41f23d68e2e742301.zip
Recent workouts are shown on the homepage
-rw-r--r--app/routes/basic.py16
-rw-r--r--app/tables/user.py3
-rw-r--r--app/templates/home.html33
3 files changed, 20 insertions, 32 deletions
diff --git a/app/routes/basic.py b/app/routes/basic.py
index 5883b97..f6cb005 100644
--- a/app/routes/basic.py
+++ b/app/routes/basic.py
@@ -1,12 +1,22 @@
from app import app, db
from flask import render_template
-from flask_login import login_required
+from flask_login import current_user, login_required
+from tables import Workout, WorkoutRecord
+
@app.route("/", methods=["GET"])
def index():
- return render_template('index.html')
+ return render_template("index.html")
+
@app.route("/home", methods=["GET"])
@login_required
def home():
- return render_template('home.html')
+ # Prepare so we don't have to do this in the template
+ records = (
+ db.session.query(WorkoutRecord)
+ .join(Workout)
+ .filter(Workout.user_id == current_user.id)
+ )
+
+ return render_template("home.html", records=records)
diff --git a/app/tables/user.py b/app/tables/user.py
index ddf3702..483e56f 100644
--- a/app/tables/user.py
+++ b/app/tables/user.py
@@ -10,11 +10,14 @@ def get_user(user_id):
class User(db.Model, UserMixin):
__tablename__ = "users"
+
+ # fields
id = db.Column(db.Integer, primary_key=True)
username = db.Column(db.String(80), unique=True, nullable=False)
password = db.Column(db.String(80))
email = db.Column(db.String(120), unique=True, nullable=False)
+ # relationships
workouts = db.relationship("Workout", backref="user", lazy="dynamic")
def __init__(self, username, password, email):
diff --git a/app/templates/home.html b/app/templates/home.html
index c9aa90d..e07c5fc 100644
--- a/app/templates/home.html
+++ b/app/templates/home.html
@@ -105,36 +105,11 @@
<div class="content">
<table class="table is-fullwidth is-striped">
<tbody>
- <tr>
- <td>Push Day</td>
- <td>04/04/22 4:30 PM</td>
+ {% for record in records %}
+ <td>{{ record.workout.name }}</td>
+ <td>{{ record.finished }}</td>
<td class="level-right"><a class="button is-small is-primary" href="#">View</a></td>
- </tr>
- <tr>
- <td>Leg Day</td>
- <td>04/02/22 2:13 PM</td>
- <td class="level-right"><a class="button is-small is-primary" href="#">View</a></td>
- </tr>
- <tr>
- <td>Pull Day</td>
- <td>04/01/22 1:30 PM</td>
- <td class="level-right"><a class="button is-small is-primary" href="#">View</a></td>
- </tr>
- <tr>
- <td>Push Day</td>
- <td>03/29/22 4:30 PM</td>
- <td class="level-right"><a class="button is-small is-primary" href="#">View</a></td>
- </tr>
- <tr>
- <td>Leg Day</td>
- <td>03/28/22 2:13 PM</td>
- <td class="level-right"><a class="button is-small is-primary" href="#">View</a></td>
- </tr>
- <tr>
- <td>Pull Day</td>
- <td>03/27/22 1:30 PM</td>
- <td class="level-right"><a class="button is-small is-primary" href="#">View</a></td>
- </tr>
+ {% endfor %}
</tbody>
</table>
</div>