Пример #1
0
def create_artist_submission():
    error = False
    data = request.form

    try:
        artist = Artist()
        artist.name = data['name']
        artist.city = data['city']
        artist.state = data['state']
        artist.phone = data.get('phone', '')
        artist.facebook_link = data.get('facebook_link', '')
        artist.genres = [
            ArtistGenres(genre=GenreEnum[genre])
            for genre in data.getlist('genres')
        ]
        db.session.add(artist)
        db.session.commit()
    except:
        error = True
        db.session.rollback()
    finally:
        data = artist.to_dict()
        db.session.close()

    if not error:
        flash(f'Artist {data["name"]} was successfully listed!',
              'alert-success')
    else:
        flash(
            f'An error occurred. Artist {data["name"]} could not be listed. \
              Does the artist exist already?', 'alert-danger')

    return render_template('pages/home.html')