diff --git a/api/rooms/api_rooms.py b/api/rooms/api_rooms.py index 14039b4..8b3d68f 100644 --- a/api/rooms/api_rooms.py +++ b/api/rooms/api_rooms.py @@ -1,6 +1,6 @@ from flask import Blueprint, request, jsonify, session from models.User import User, user_schema, users_schema -from models.GameRoom import GameRoom +from models.GameRoom import GameRoom, rooms_schema, room_schema from database import db from ..decorators import jwt_required @@ -12,7 +12,8 @@ def get_room(): @api_rooms.route('/', methods=['GET']) def get_rooms(): - response = {"status" : "success"} + rooms = GameRoom.query.all() + response = rooms_schema.dumps(rooms) return jsonify(response) # protected route diff --git a/models/GameRoom.py b/models/GameRoom.py index ce6d477..fda05d2 100644 --- a/models/GameRoom.py +++ b/models/GameRoom.py @@ -1,4 +1,5 @@ from app import db, ma +from marshmallow import fields # TODO User >---< GameRoom # ! Game Room >-< Users join table @@ -40,3 +41,21 @@ class GameRoom(db.Model): self.description = description self.private = private self.language = language + +class LanguageSchema(ma.ModelSchema): + id = fields.Int() + name = fields.Str() + iso = fields.Str() + +language_schema = LanguageSchema() + +class RoomSchema(ma.ModelSchema): + id = fields.Int() + name = fields.Str() + description = fields.Str() + private = fields.Bool() + language = fields.Nested(LanguageSchema) + + +room_schema = RoomSchema() +rooms_schema = RoomSchema(many=True) \ No newline at end of file