diff --git a/app.py b/app.py index 7587e2b..7bc71c3 100644 --- a/app.py +++ b/app.py @@ -65,24 +65,26 @@ def json_to_db(data): db.session.query(Attendance).delete() db.session.query(Date).delete() db.session.query(GuestName).delete() + db.session.query(Player).delete() # <-- Clear players so we can import new ones db.session.commit() - # Players are assumed fixed + # Insert players from JSON + for name in data.get("players", []): + db.session.add(Player(name=name)) + db.session.commit() + # Now continue with dates, attendance, guest names as before... for date_str in data.get("dates", []): date = Date(date_str=date_str) db.session.add(date) db.session.commit() - # Attendance for idx, player_name in enumerate(data["players"] + [data["guest"]]): key = f"{date_str}|{idx}" status = data["attendance"].get(key) if status: if player_name == data["guest"]: - # Guest is not stored as player, skip continue player = Player.query.filter_by(name=player_name).first() if player: db.session.add(Attendance(date_id=date.id, player_id=player.id, status='yes' if status is True else 'no')) - # Guest name guest_name = data.get("guestNames", {}).get(date_str) if guest_name: db.session.add(GuestName(date_id=date.id, name=guest_name))