diff --git a/nonebot_bison/bootstrap.py b/nonebot_bison/bootstrap.py index d8f9e63..c79b420 100644 --- a/nonebot_bison/bootstrap.py +++ b/nonebot_bison/bootstrap.py @@ -3,7 +3,7 @@ from nonebot_plugin_datastore.db import get_engine, post_db_init, pre_db_init from sqlalchemy import inspect, text from .config.config_legacy import start_up as legacy_db_startup -from .config.db import data_migrate +from .config.db_migration import data_migrate from .scheduler.manager import init_scheduler diff --git a/nonebot_bison/config/db_config.py b/nonebot_bison/config/db_config.py index 4ee9fec..7f43416 100644 --- a/nonebot_bison/config/db_config.py +++ b/nonebot_bison/config/db_config.py @@ -89,7 +89,7 @@ class DBConfig: select(Subscribe) .where(User.type == user_type, User.uid == user) .join(User) - .options(selectinload(Subscribe.target)) # type:ignore + .options(selectinload(Subscribe.target)) ) subs = (await session.scalars(query_stmt)).all() return subs diff --git a/nonebot_bison/config/db.py b/nonebot_bison/config/db_migration.py similarity index 95% rename from nonebot_bison/config/db.py rename to nonebot_bison/config/db_migration.py index e305927..08af455 100644 --- a/nonebot_bison/config/db.py +++ b/nonebot_bison/config/db_migration.py @@ -11,7 +11,10 @@ async def data_migrate(): if config.available: logger.warning("You are still using legacy db, migrating to sqlite") all_subs: list[ConfigContent] = list( - map(lambda item: ConfigContent(**item), config.get_all_subscribe().all()) + map( + lambda item: ConfigContent(**item), + config.get_all_subscribe().all(), + ) ) async with AsyncSession(get_engine()) as sess: user_to_create = [] diff --git a/nonebot_bison/config/db_model.py b/nonebot_bison/config/db_model.py index f41db78..73f91fc 100644 --- a/nonebot_bison/config/db_model.py +++ b/nonebot_bison/config/db_model.py @@ -30,7 +30,7 @@ class Target(Model): platform_name: Mapped[str] = mapped_column(String(20)) target: Mapped[str] = mapped_column(String(1024)) target_name: Mapped[str] = mapped_column(String(1024)) - default_schedule_weight: Mapped[int | None] = mapped_column(default=10) + default_schedule_weight: Mapped[int] = mapped_column(default=10) subscribes: Mapped[list["Subscribe"]] = relationship(back_populates="target") time_weight: Mapped[list["ScheduleTimeWeight"]] = relationship( @@ -40,10 +40,10 @@ class Target(Model): class ScheduleTimeWeight(Model): id: Mapped[int] = mapped_column(primary_key=True) - target_id: Mapped[int | None] = mapped_column(ForeignKey("nonebot_bison_target.id")) - start_time: Mapped[datetime.time | None] - end_time: Mapped[datetime.time | None] - weight: Mapped[int | None] + target_id: Mapped[int] = mapped_column(ForeignKey("nonebot_bison_target.id")) + start_time: Mapped[datetime.time] + end_time: Mapped[datetime.time] + weight: Mapped[int] target: Mapped[Target] = relationship(back_populates="time_weight") @@ -57,8 +57,8 @@ class Subscribe(Model): ) id: Mapped[int] = mapped_column(primary_key=True) - target_id: Mapped[int | None] = mapped_column(ForeignKey("nonebot_bison_target.id")) - user_id: Mapped[int | None] = mapped_column(ForeignKey("nonebot_bison_user.id")) + target_id: Mapped[int] = mapped_column(ForeignKey("nonebot_bison_target.id")) + user_id: Mapped[int] = mapped_column(ForeignKey("nonebot_bison_user.id")) categories: Mapped[list[Category]] = mapped_column(JSON) tags: Mapped[list[Tag]] = mapped_column(JSON)