fix(room): solve 500 in API POST /rooms

This commit is contained in:
chenjintang-shrimp
2025-08-07 07:37:24 +00:00
parent 47d02e4e9c
commit ff25e58696
2 changed files with 8 additions and 7 deletions

View File

@@ -134,6 +134,7 @@ class PlaylistResp(PlaylistBase):
@classmethod
async def from_db(cls, playlist: Playlist) -> "PlaylistResp":
resp = cls.model_validate(playlist)
resp.beatmap = await BeatmapResp.from_db(playlist.beatmap)
data = playlist.model_dump()
data["beatmap"] = await BeatmapResp.from_db(playlist.beatmap, from_set=True)
resp = cls.model_validate(data)
return resp

View File

@@ -37,10 +37,10 @@ async def get_all_rooms(
rooms = MultiplayerHubs.rooms.values()
resp_list: list[RoomResp] = []
for room in rooms:
if category == "realtime" and room.category != "normal":
continue
elif category != room.category:
continue
# if category == "realtime" and room.category != "normal":
# continue
# elif category != room.category and category != "":
# continue
resp_list.append(await RoomResp.from_hub(room))
return resp_list
@@ -99,6 +99,6 @@ async def create_room(
hub=MultiplayerHubs,
)
MultiplayerHubs.rooms[db_room.id] = server_room
created_room = APICreatedRoom.model_validate(db_room)
created_room = APICreatedRoom.model_validate(await RoomResp.from_db(db_room))
created_room.error = ""
return created_room