50 lines
1009 B
Python
50 lines
1009 B
Python
|
#!/usr/bin/env python3
|
||
|
from marshm import ma
|
||
|
from marshmallow import fields
|
||
|
|
||
|
|
||
|
"""
|
||
|
Marshmallow schemas
|
||
|
"""
|
||
|
|
||
|
__author__ = "@tormakris"
|
||
|
__copyright__ = "Copyright 2020, onSpot Team"
|
||
|
__module_name__ = "schemas"
|
||
|
__version__text__ = "1"
|
||
|
|
||
|
|
||
|
class UserSchema(ma.Schema):
|
||
|
"""
|
||
|
Parameters:
|
||
|
- name (string)
|
||
|
- passowrd (string)
|
||
|
"""
|
||
|
|
||
|
name = fields.String(required=True)
|
||
|
password = fields.String(required=True)
|
||
|
|
||
|
|
||
|
class TrackSchema(ma.Schema):
|
||
|
"""
|
||
|
Parameters:
|
||
|
- id (integer)
|
||
|
- title (string)
|
||
|
- artist (string)
|
||
|
- album (string)
|
||
|
- spotify_id (string)
|
||
|
- cover_url (string)
|
||
|
"""
|
||
|
|
||
|
id = fields.Integer(required=True)
|
||
|
title = fields.String(required=True)
|
||
|
artist = fields.String(required=True)
|
||
|
album = fields.String(required=True)
|
||
|
spotify_id = fields.String(required=True)
|
||
|
cover_url = fields.String(required=True)
|
||
|
|
||
|
|
||
|
class ListSchema(ma.Schema):
|
||
|
|
||
|
id = fields.Integer(required=True)
|
||
|
tracklist = fields.Nested(TrackSchema, many=True)
|