From 6001e59999aff70c3c31bf18d9cc23cceced8917 Mon Sep 17 00:00:00 2001 From: jimmy-sketch Date: Sat, 26 Jul 2025 08:46:01 +0800 Subject: [PATCH] =?UTF-8?q?fix(database):=20=E5=B0=86reulest=5Fid=E5=AD=97?= =?UTF-8?q?=E6=AE=B5=E7=9A=84=E7=B1=BB=E5=9E=8B=E6=94=B9=E4=B8=BAGameMode?= =?UTF-8?q?=E4=BB=A5=E4=B8=8Eapp/models/scores.py=E4=B8=AD=E7=9A=84?= =?UTF-8?q?=E6=97=A0=E7=94=A8=E5=AE=9A=E4=B9=89=E5=8C=B9=E9=85=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/database/score.py | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/app/database/score.py b/app/database/score.py index a9241d8..477695c 100644 --- a/app/database/score.py +++ b/app/database/score.py @@ -2,17 +2,19 @@ from datetime import datetime import math -from typing import Literal +from typing import Literal, TYPE_CHECKING, List -from app.models.score import Rank, APIMod +from app.models.score import Rank, APIMod, GameMode from .beatmap import Beatmap, BeatmapResp from .beatmapset import Beatmapset, BeatmapsetResp from pydantic import BaseModel from sqlalchemy import Column, DateTime, JSON -from sqlmodel import BigInteger, Field, Relationship, SQLModel +from sqlmodel import BigInteger, Field, Relationship, SQLModel, JSON as SQLModeJSON +if TYPE_CHECKING: + from .user import User class ScoreBase(SQLModel): # 基本字段 @@ -33,7 +35,7 @@ class ScoreBase(SQLModel): preserve: bool = Field(default=True) rank: Rank room_id: int | None = Field(default=None) # multiplayer - ruleset_id: Literal[0, 1, 2, 3] = Field(index=True) + ruleset_id: GameMode = Field(index=True) started_at: datetime = Field(sa_column=Column(DateTime)) total_score: int = Field(default=0, sa_column=Column(BigInteger)) type: str @@ -107,4 +109,4 @@ class ScoreResp(ScoreBase): count_large_tick_miss=score.nlarge_tick_miss, count_slider_tail_hit=score.nslider_tail_hit, ) - return s + return s \ No newline at end of file