handle existing playlist name

This commit is contained in:
geoffrey45
2022-03-26 12:32:10 +03:00
parent e2544dbbdc
commit 8533fdb7ee
+15 -4
View File
@@ -5,13 +5,13 @@ Contains all the playlist routes.
from flask import Blueprint, request
from app import instances, api
from app.lib import playlistlib
from app import models
playlist_bp = Blueprint("playlist", __name__, url_prefix="/")
@playlist_bp.route("/playlists", methods=["GET"])
def get_all_playlists():
print(api.PLAYLISTS)
playlists = []
for playlist in api.PLAYLISTS:
@@ -24,11 +24,22 @@ def get_all_playlists():
@playlist_bp.route("/playlist/new", methods=["POST"])
def create_playlist():
data = request.get_json()
playlist = {"name": data["name"], "description": [], "tracks": []}
instances.playlist_instance.insert_playlist(playlist)
return {"msg": "success"}
try:
p_in_db = instances.playlist_instance.get_playlist_by_name(playlist["name"])
if p_in_db:
raise Exception("Playlist already exists.")
except Exception as e:
return {"error": str(e)}, 409
upsert_id = instances.playlist_instance.insert_playlist(playlist)
p = instances.playlist_instance.get_playlist_by_id(upsert_id)
api.PLAYLISTS.append(models.Playlist(p))
return {"msg": "Playlist created successfully."}, 201
@playlist_bp.route("/playlist/<playlist_id>/add", methods=["POST"])