fix(database): 将reulest_id字段的类型改为GameMode以与app/models/scores.py中的无用定义匹配

This commit is contained in:
jimmy-sketch
2025-07-26 08:46:01 +08:00
parent 002c89edff
commit 6001e59999

View File

@@ -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