from flask import Flask, render_template_string, request, redirect import sqlite3 import datetime
app = Flask(name) DB = "expenses.db"
def init_db(): conn = sqlite3.connect(DB) c = conn.cursor() c.execute(""" CREATE TABLE IF NOT EXISTS expenses ( id INTEGER PRIMARY KEY AUTOINCREMENT, title TEXT NOT NULL, amount REAL NOT NULL, category TEXT, created_at TEXT ) """) conn.commit() conn.close()
@app.route("/") def index(): conn = sqlite3.connect(DB) c = conn.cursor() c.execute("SELECT * FROM expenses ORDER BY id DESC") data = c.fetchall() total = sum([d[2] for d in data]) if data else 0 conn.close() return render_template_string("""
β Add Expense{% for e in data %} {% else %}
No expenses yet.
{% endfor %} """, data=data, total=total)@app.route("/add"