fix: 天气查询失败的问题

This commit is contained in:
2024-04-15 20:21:50 +08:00
parent 79d8063b5d
commit 0d3361dc99
7 changed files with 34 additions and 44 deletions

View File

@ -102,9 +102,10 @@ def load_from_dict(data: dict, lang_code: str):
class Language:
def __init__(self, lang_code: str = None, fallback_lang_code: str = "zh-CN"):
if lang_code is None:
lang_code = config.get("default_language", get_default_lang())
self.lang_code = lang_code
if self.lang_code is None:
self.lang_code = get_default_lang_code()
self.fallback_lang_code = fallback_lang_code
if self.fallback_lang_code is None:
self.fallback_lang_code = config.get("default_language", get_system_lang_code())
@ -159,7 +160,7 @@ def get_user_lang(user_id: str) -> Language:
username="Unknown"
))
return Language(user.profile.get("lang", get_default_lang()))
return Language(user.profile.get("lang", get_default_lang_code()))
def get_system_lang_code() -> str:
@ -169,11 +170,13 @@ def get_system_lang_code() -> str:
return locale.getdefaultlocale()[0].replace('_', '-')
def get_default_lang() -> Language:
def get_default_lang_code() -> str:
"""
获取配置默认/系统语言
获取默认语言代码
Returns:
"""
return Language(config.get("default_language", get_system_lang_code()))
return config.get("default_language", get_system_lang_code())
def get_all_lang() -> dict[str, str]:

View File

@ -2,7 +2,7 @@ import sys
import loguru
from typing import TYPE_CHECKING
from .config import load_from_yaml
from .language import get_default_lang
from .language import Language, get_default_lang_code
logger = loguru.logger
if TYPE_CHECKING:
@ -64,7 +64,7 @@ def init_log():
format=get_format(config.get("log_level", "INFO")),
)
show_icon = config.get("log_icon", True)
lang = get_default_lang()
lang = Language(get_default_lang_code())
debug = lang.get("log.debug", default="==DEBUG")
info = lang.get("log.info", default="===INFO")

View File

@ -7,11 +7,11 @@ import nonebot
import yaml
from .data import LiteModel
from .language import get_default_lang
from .language import Language, get_default_lang_code
_loaded_resource_packs: list["ResourceMetadata"] = [] # 按照加载顺序排序
temp_resource_root = "data/liteyuki/resources"
lang = get_default_lang()
lang = Language(get_default_lang_code())
class ResourceMetadata(LiteModel):