|
|
|
@ -1,4 +1,7 @@ |
|
|
|
from flask import Blueprint, render_template, request, redirect, url_for |
|
|
|
from flask import Blueprint, render_template, request, redirect, url_for, current_app |
|
|
|
from werkzeug.utils import secure_filename |
|
|
|
import os |
|
|
|
|
|
|
|
from .models import db, Song, Album |
|
|
|
|
|
|
|
bp = Blueprint("paginas", __name__) |
|
|
|
@ -36,11 +39,29 @@ def add_song(): |
|
|
|
@bp.route('/add_album', methods=['GET', 'POST']) |
|
|
|
def add_album(): |
|
|
|
if request.method == 'POST': |
|
|
|
|
|
|
|
name = request.form['name'] |
|
|
|
artist = request.form['artist'] |
|
|
|
year = request.form['year'] |
|
|
|
|
|
|
|
new_album = Album(name=name, artist=artist, year=year) |
|
|
|
# Verificar que el campo 'cover_image' está en request.files |
|
|
|
if 'coverimage' not in request.files: |
|
|
|
return "No file part in the request", 400 |
|
|
|
|
|
|
|
cover_image = request.files['coverimage'] |
|
|
|
|
|
|
|
# Verificar que se ha seleccionado un archivo |
|
|
|
|
|
|
|
if cover_image.filename == '': |
|
|
|
return "No selected file", 400 |
|
|
|
|
|
|
|
if cover_image: |
|
|
|
image_filename = secure_filename(cover_image.filename) |
|
|
|
cover_image.save(os.path.join(current_app.config['UPLOAD_FOLDER'], image_filename)) |
|
|
|
else: |
|
|
|
image_filename = None |
|
|
|
|
|
|
|
new_album = Album(name=name, artist=artist, year=year, cover_image=image_filename) |
|
|
|
db.session.add(new_album) |
|
|
|
db.session.commit() |
|
|
|
|
|
|
|
|