From 0084ed9159f93ff9154d4bb673b6eea52b489f3c Mon Sep 17 00:00:00 2001 From: Redmomn <109732988+Redmomn@users.noreply.github.com> Date: Mon, 4 Mar 2024 23:08:28 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E9=80=82=E9=85=8Dpydantic=20v1&v2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/common/config/__init__.py | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) 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):