修复:升级 Pydantic v2 兼容性,修复插件加载错误

- 更新 danding_points 配置使用 pydantic_settings.BaseSettings 和 SettingsConfigDict
- 更新 onmyoji_gacha 配置使用 pydantic_settings.BaseSettings
- 修复 danding_qqpush 配置加载使用 model_validate 替代 parse_obj
- 添加 group_horse_racing 插件的详细 README 文档

这些修复解决了 Pydantic v2 迁移中的导入错误和 API 变更问题。

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-04-03 22:27:45 +08:00
parent 482eda5253
commit 6eed4bf3a2
4 changed files with 238 additions and 22 deletions

View File

@@ -1,7 +1,9 @@
from pydantic import BaseSettings
from pydantic_settings import BaseSettings, SettingsConfigDict
import os
class Config(BaseSettings):
model_config = SettingsConfigDict(extra="ignore")
# 抽卡概率配置
RARITY_PROBABILITY: dict = {
"R": 78.75,
@@ -9,18 +11,18 @@ class Config(BaseSettings):
"SSR": 1.0,
"SP": 0.25
}
# 每日抽卡限制
DAILY_LIMIT: int = 3
# 数据文件路径
DB_FILE: str = "data/onmyoji_gacha/gacha.db"
DAILY_DRAWS_FILE: str = "data/onmyoji_gacha/daily_draws.json" # 保留用于迁移
USER_STATS_FILE: str = "data/onmyoji_gacha/user_stats.json" # 保留用于迁移
# 式神图片目录
SHIKIGAMI_IMG_DIR: str = "data/chouka/"
# 触发指令
GACHA_COMMANDS: list = ["抽卡","抽奖", "召唤"]
STATS_COMMANDS: list = ["我的抽卡","我的抽奖", "我的图鉴"]
@@ -28,7 +30,7 @@ class Config(BaseSettings):
TRIPLE_GACHA_COMMANDS: list = ["三连", "三连抽"]
ACHIEVEMENT_COMMANDS: list = ["查询成就", "抽卡成就"]
INTRO_COMMANDS: list = ["抽卡介绍", "抽卡说明", "抽卡帮助"]
# 成就系统配置
ACHIEVEMENTS: dict = {
"consecutive_days_30_1": {
@@ -99,20 +101,17 @@ class Config(BaseSettings):
"type": "no_ssr_streak"
}
}
# 权限配置
ALLOWED_GROUP_ID: int = 621016172
ALLOWED_USER_ID: int = 1424473282
# 特殊概率用户配置
SPECIAL_PROBABILITY_USERS: list = ["1424473282"] # 100%抽到SSR或SP的用户列表
# Web后台管理配置
WEB_ADMIN_TOKEN: str = os.getenv("WEB_ADMIN_TOKEN", "onmyoji_admin_token_2024")
WEB_ADMIN_PORT: int = int(os.getenv("WEB_ADMIN_PORT", "8080"))
# 时区
TIMEZONE: str = "Asia/Shanghai"
class Config:
extra = "ignore"
TIMEZONE: str = "Asia/Shanghai"