
Enhance app initialization; set secret key from environment variable for better security practices Update work_log model import; change User import path for improved module structure Refactor routes; add new inventory item creation route and enhance settings handling with JSON form state Improve ComboBoxWidget; add handleComboAdd function for better option management and integrate with render_combobox macro Revamp settings template; implement form state management and improve modal functionality for room creation Add error template; create a new error handling page for better user feedback
30 lines
762 B
Python
30 lines
762 B
Python
from flask import Flask
|
|
from flask_sqlalchemy import SQLAlchemy
|
|
import logging
|
|
import os
|
|
|
|
db = SQLAlchemy()
|
|
|
|
logger = logging.getLogger('sqlalchemy.engine')
|
|
logger.setLevel(logging.INFO)
|
|
if not logger.handlers:
|
|
handler = logging.StreamHandler()
|
|
handler.setFormatter(logging.Formatter('%(asctime)s [%(levelname)s] %(message)s'))
|
|
logger.addHandler(handler)
|
|
|
|
def create_app():
|
|
from config import Config
|
|
app = Flask(__name__)
|
|
app.secret_key = os.getenv('SECRET_KEY', 'dev-secret-key-unsafe') # You know what to do for prod
|
|
app.config.from_object(Config)
|
|
|
|
db.init_app(app)
|
|
|
|
with app.app_context():
|
|
from . import models
|
|
db.create_all()
|
|
|
|
from .routes import main
|
|
app.register_blueprint(main)
|
|
|
|
return app
|