diff --git a/app.py b/app.py index cc2e297..14df504 100644 --- a/app.py +++ b/app.py @@ -320,10 +320,17 @@ logger.info("Blueprints registered") @login_manager.user_loader def load_user(user_id): - """Load user from database""" + """Load user from database with eager-loaded relationships""" + from sqlalchemy.orm import joinedload db = SessionLocal() try: - return db.query(User).filter_by(id=int(user_id)).first() + user = db.query(User).options( + joinedload(User.company_associations) + ).filter_by(id=int(user_id)).first() + if user: + # Force-load associations before detaching from session + _ = user.company_associations + return user finally: db.close()