22 lines
710 B
Python
22 lines
710 B
Python
import os
|
|
from flask import Flask, render_template
|
|
from flask_bootstrap import Bootstrap5
|
|
from models import db, Feature
|
|
|
|
app = Flask(__name__)
|
|
db_user = os.getenv('DB_USER', 'postgres')
|
|
db_pass = os.getenv('DB_PASS', 'password') # Fallback; overridden by env
|
|
db_name = os.getenv('DB_NAME', 'demo_db')
|
|
app.config['SQLALCHEMY_DATABASE_URI'] = f'postgresql://{db_user}:{db_pass}@db:5432/{db_name}'
|
|
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False
|
|
|
|
bootstrap = Bootstrap5(app)
|
|
db.init_app(app)
|
|
|
|
@app.route('/')
|
|
def index():
|
|
with app.app_context():
|
|
Feature.seed_db() # Seed on first load if empty
|
|
features = Feature.query.all()
|
|
return render_template('index.html', features=features)
|