fix reponses in playlist when creating
This commit is contained in:
parent
c14747a205
commit
171c7c551e
@ -1,6 +1,6 @@
|
|||||||
from flask import Blueprint, request, Response, jsonify
|
from flask import Blueprint, request, Response, jsonify
|
||||||
from flask_cors import cross_origin
|
from flask_cors import cross_origin
|
||||||
from ..models import Playlist, PlaylistFile
|
from ..models import Playlist, PlaylistFile, File
|
||||||
from .. import db
|
from .. import db
|
||||||
from datetime import datetime
|
from datetime import datetime
|
||||||
from sqlalchemy.sql import func
|
from sqlalchemy.sql import func
|
||||||
@ -15,12 +15,9 @@ def create():
|
|||||||
db.session.flush()
|
db.session.flush()
|
||||||
db.session.commit()
|
db.session.commit()
|
||||||
|
|
||||||
print(new_playlist.as_dict())
|
res = new_playlist.as_dict()
|
||||||
return Response(
|
res['last_modified'] = res['last_modified'].isoformat()
|
||||||
response=new_playlist.as_dict(),
|
return jsonify(res)
|
||||||
status=200,
|
|
||||||
mimetype="application/json"
|
|
||||||
)
|
|
||||||
|
|
||||||
@playlist.route('/', methods=["GET"])
|
@playlist.route('/', methods=["GET"])
|
||||||
def list():
|
def list():
|
||||||
@ -36,23 +33,13 @@ def list():
|
|||||||
|
|
||||||
@playlist.route('/<int:playlist_id>', methods=["GET"])
|
@playlist.route('/<int:playlist_id>', methods=["GET"])
|
||||||
def get_playlist(playlist_id):
|
def get_playlist(playlist_id):
|
||||||
query = db.session.query(\
|
query = db.session.query(Playlist).filter(Playlist.id == playlist_id).first()
|
||||||
Playlist.name,\
|
|
||||||
func.group_concat(PlaylistFile.id).label('files')\
|
|
||||||
).\
|
|
||||||
join(PlaylistFile, Playlist.id == PlaylistFile.playlist_id).\
|
|
||||||
filter(Playlist.id == playlist_id).\
|
|
||||||
group_by(Playlist.id).\
|
|
||||||
all()
|
|
||||||
|
|
||||||
query = db.session.query( \
|
files = []
|
||||||
Playlist.name, \
|
for playlist_file in query.playlist_files:
|
||||||
func.group_concat(Playlist.id == PlaylistFile.playlist_id) \
|
file = playlist_file.file.as_dict()
|
||||||
) \
|
file['position'] = playlist_file.position
|
||||||
.outerjoin(PlaylistFile, Playlist.id == PlaylistFile.playlist_id) \
|
file['seconds'] = playlist_file.seconds
|
||||||
.filter(Playlist.id == playlist_id) \
|
files.append(file)
|
||||||
.group_by(Playlist.id) \
|
|
||||||
.first()
|
|
||||||
|
|
||||||
return jsonify({'name': query[0], 'files': query[1]})
|
|
||||||
|
|
||||||
|
return jsonify({'name': query.name, 'files': files})
|
||||||
|
Loading…
Reference in New Issue
Block a user