fix: migrations 模块在 gunicorn --preload 下无法导入
ModuleNotFoundError: No module named 'migrations' 根因:gunicorn 的 sys.path 不包含 backend/ 目录 修复:flask_app.py 顶层添加 sys.path.insert 确保 backend 在搜索路径中
This commit is contained in:
@@ -1,12 +1,18 @@
|
|||||||
from datetime import date, datetime
|
from datetime import date, datetime
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
import os
|
import os
|
||||||
|
import sys
|
||||||
import json
|
import json
|
||||||
import shutil
|
import shutil
|
||||||
import sqlite3 # 保留用于数据迁移
|
import sqlite3 # 保留用于数据迁移
|
||||||
import logging
|
import logging
|
||||||
import mysql.connector
|
import mysql.connector
|
||||||
|
|
||||||
|
# 确保 backend 目录在 sys.path 中(兼容 gunicorn --preload 模式)
|
||||||
|
_backend_dir = os.path.dirname(os.path.abspath(__file__))
|
||||||
|
if _backend_dir not in sys.path:
|
||||||
|
sys.path.insert(0, _backend_dir)
|
||||||
|
|
||||||
from flask import Flask, jsonify, render_template, request, send_file, session, redirect
|
from flask import Flask, jsonify, render_template, request, send_file, session, redirect
|
||||||
from werkzeug.security import generate_password_hash, check_password_hash
|
from werkzeug.security import generate_password_hash, check_password_hash
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user