mirror of
https://github.com/jxxghp/MoviePilot.git
synced 2026-09-05 23:47:41 +08:00
fix:重构配置热加载
This commit is contained in:
@@ -20,6 +20,7 @@ from app.core.config import global_vars, settings
|
|||||||
from app.core.metainfo import MetaInfo
|
from app.core.metainfo import MetaInfo
|
||||||
from app.core.module import ModuleManager
|
from app.core.module import ModuleManager
|
||||||
from app.core.security import verify_apitoken, verify_resource_token, verify_token
|
from app.core.security import verify_apitoken, verify_resource_token, verify_token
|
||||||
|
from app.core.event import eventmanager
|
||||||
from app.db.models import User
|
from app.db.models import User
|
||||||
from app.db.systemconfig_oper import SystemConfigOper
|
from app.db.systemconfig_oper import SystemConfigOper
|
||||||
from app.db.user_oper import get_current_active_superuser
|
from app.db.user_oper import get_current_active_superuser
|
||||||
@@ -38,7 +39,6 @@ from app.utils.crypto import HashUtils
|
|||||||
from app.utils.http import RequestUtils
|
from app.utils.http import RequestUtils
|
||||||
from app.utils.security import SecurityUtils
|
from app.utils.security import SecurityUtils
|
||||||
from app.utils.url import UrlUtils
|
from app.utils.url import UrlUtils
|
||||||
from core.event import eventmanager
|
|
||||||
from version import APP_VERSION
|
from version import APP_VERSION
|
||||||
|
|
||||||
router = APIRouter()
|
router = APIRouter()
|
||||||
@@ -225,7 +225,7 @@ def set_env_setting(env: dict,
|
|||||||
if failed_updates:
|
if failed_updates:
|
||||||
return schemas.Response(
|
return schemas.Response(
|
||||||
success=False,
|
success=False,
|
||||||
message="部分配置项更新失败",
|
message=f"{', '.join(failed_updates.keys())} 配置项更新失败",
|
||||||
data={
|
data={
|
||||||
"success_updates": success_updates,
|
"success_updates": success_updates,
|
||||||
"failed_updates": failed_updates
|
"failed_updates": failed_updates
|
||||||
|
|||||||
+4
-13
@@ -450,24 +450,15 @@ class EventManager(metaclass=Singleton):
|
|||||||
|
|
||||||
# 如果类不在全局变量中,尝试动态导入模块并创建实例
|
# 如果类不在全局变量中,尝试动态导入模块并创建实例
|
||||||
try:
|
try:
|
||||||
if class_name == "Command":
|
if class_name.endswith("Manager"):
|
||||||
module_name = "app.command"
|
module_name = f"app.core.{class_name[:-7].lower()}"
|
||||||
module = importlib.import_module(module_name)
|
|
||||||
elif class_name == "Monitor":
|
|
||||||
module_name = "app.monitor"
|
|
||||||
module = importlib.import_module(module_name)
|
|
||||||
elif class_name == "Scheduler":
|
|
||||||
module_name = "app.scheduler"
|
|
||||||
module = importlib.import_module(module_name)
|
|
||||||
elif class_name == "PluginManager":
|
|
||||||
module_name = "app.core.plugin"
|
|
||||||
module = importlib.import_module(module_name)
|
module = importlib.import_module(module_name)
|
||||||
elif class_name.endswith("Chain"):
|
elif class_name.endswith("Chain"):
|
||||||
module_name = f"app.chain.{class_name[:-5].lower()}"
|
module_name = f"app.chain.{class_name[:-5].lower()}"
|
||||||
module = importlib.import_module(module_name)
|
module = importlib.import_module(module_name)
|
||||||
else:
|
else:
|
||||||
logger.debug(f"事件处理出错:不支持的类名: {class_name}")
|
module_name = f"app.{class_name.lower()}"
|
||||||
return None
|
module = importlib.import_module(module_name)
|
||||||
if hasattr(module, class_name):
|
if hasattr(module, class_name):
|
||||||
class_obj = getattr(module, class_name)()
|
class_obj = getattr(module, class_name)()
|
||||||
return class_obj
|
return class_obj
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ from app.utils.http import RequestUtils
|
|||||||
from app.utils.singleton import Singleton
|
from app.utils.singleton import Singleton
|
||||||
from app.utils.string import StringUtils
|
from app.utils.string import StringUtils
|
||||||
from app.utils.system import SystemUtils
|
from app.utils.system import SystemUtils
|
||||||
from helper.system import SystemHelper
|
from app.helper.system import SystemHelper
|
||||||
|
|
||||||
|
|
||||||
class ResourceHelper(metaclass=Singleton):
|
class ResourceHelper(metaclass=Singleton):
|
||||||
|
|||||||
Reference in New Issue
Block a user