diff --git a/src/common/config/__init__.py b/src/common/config/__init__.py index 752a6e3..1e0a4f5 100644 --- a/src/common/config/__init__.py +++ b/src/common/config/__init__.py @@ -4,7 +4,13 @@ from abc import ABC from typing import Any, Optional, List from pydantic import BaseModel, Extra -from nonebot import get_driver + +try: + # pydantic v2 + from nonebot import get_plugin_config +except ImportError: + # pydantic v1 + from nonebot import get_driver KEY_JOINER = '.' @@ -67,7 +73,12 @@ class PluginConfig(BaseModel, extra=Extra.ignore): chat_strategy: str = '' -plugin_config = PluginConfig.parse_obj(get_driver().config) +try: + # pydantic v2 + plugin_config = get_plugin_config(PluginConfig) +except: + # pydantic v1 + plugin_config = PluginConfig.parse_obj(get_driver().config) class Config(ABC):