Spaces:
Running
Running
Upload 14 files
Browse files- database_sql.py +3 -4
database_sql.py
CHANGED
|
@@ -4,18 +4,17 @@ from sqlalchemy import create_engine
|
|
| 4 |
from sqlalchemy.orm import sessionmaker
|
| 5 |
from models_sql import Base
|
| 6 |
|
| 7 |
-
# 优先读取环境变量中的 PostgreSQL 数据库连接
|
| 8 |
-
# 生产环境建议在 HF Spaces 的 Secrets 中配置 DATABASE_URL = postgresql://user:pass@host/dbname
|
| 9 |
SQLALCHEMY_DATABASE_URL = os.environ.get("DATABASE_URL", "sqlite:////tmp/comfy_financial.db")
|
| 10 |
|
| 11 |
-
#
|
| 12 |
connect_args = {"check_same_thread": False} if "sqlite" in SQLALCHEMY_DATABASE_URL else {}
|
| 13 |
|
| 14 |
engine = create_engine(SQLALCHEMY_DATABASE_URL, connect_args=connect_args)
|
| 15 |
SessionLocal = sessionmaker(autocommit=False, autoflush=False, bind=engine)
|
| 16 |
|
| 17 |
def init_sql_db():
|
| 18 |
-
# 启动时自动建表
|
| 19 |
Base.metadata.create_all(bind=engine)
|
| 20 |
|
| 21 |
def get_db():
|
|
|
|
| 4 |
from sqlalchemy.orm import sessionmaker
|
| 5 |
from models_sql import Base
|
| 6 |
|
| 7 |
+
# 核心:优先读取环境变量中的 PostgreSQL 数据库连接
|
|
|
|
| 8 |
SQLALCHEMY_DATABASE_URL = os.environ.get("DATABASE_URL", "sqlite:////tmp/comfy_financial.db")
|
| 9 |
|
| 10 |
+
# 兼容性处理:只有在使用降级的 SQLite 时,才需要 check_same_thread=False
|
| 11 |
connect_args = {"check_same_thread": False} if "sqlite" in SQLALCHEMY_DATABASE_URL else {}
|
| 12 |
|
| 13 |
engine = create_engine(SQLALCHEMY_DATABASE_URL, connect_args=connect_args)
|
| 14 |
SessionLocal = sessionmaker(autocommit=False, autoflush=False, bind=engine)
|
| 15 |
|
| 16 |
def init_sql_db():
|
| 17 |
+
# 启动时自动检查并在云端(或本地)建立缺失的表
|
| 18 |
Base.metadata.create_all(bind=engine)
|
| 19 |
|
| 20 |
def get_db():
|