Пример #1
0
def edit_artist_submission(artist_id):
    # TODO: take values from the form submitted, and update existing
    # artist record with ID <artist_id> using the new attributes
    error = False
    try:
        Artist.query.filter_by(id=artist_id).delete()
        venId = artist_id
        venName = request.form.get('name')
        venCity = request.form.get('city')
        venPhone = request.form.get('phone')
        venState = request.form.get('state')
        venFacebookLink = request.form.get('facebook_link')
        ven = Artist(id=venId,
                     name=venName,
                     city=venCity,
                     phone=venPhone,
                     state=venState,
                     facebook_link=venFacebookLink)
        db.session.add(ven)
        db.session.commit()
    # TODO: modify data to be the data object returned from db insertion
    except:
        error = True
        db.session.rollback()
        print(sys.exc_info())
    finally:
        db.session.close()
    if error:
        abort(400)
    else:
        return redirect(url_for('show_artist', artist_id=artist_id))
Пример #2
0
def create_artist_submission():
    form = ArtistForm(request.form)
    artist = Artist()
    form.populate_obj(artist)
    if not form.validate():
        flash(form.errors)
        return render_template('pages/home.html')
    else:
        error = False
        try:
            db.session.add(artist)
            db.session.commit()
        except:
            print('In except')
            db.session.rollback()
            error = True
        finally:
            db.session.close()
        # called upon submitting the new artist listing form
        # TODO: insert form data as a new Venue record in the db, instead
        # TODO: modify data to be the data object returned from db insertion
        if error:
            flash('An error occured. Artist ' + request.form['name'] +
                  ' cannote be listed!')
        else:
            flash('Artist ' + request.form['name'] +
                  ' was successfully listed!')
        # on successful db insert, flash success

        # TODO: on unsuccessful db insert, flash an error instead.
        # e.g., flash('An error occurred. Artist ' + data.name + ' could not be listed.')
        return render_template('pages/home.html')
Пример #3
0
def create_artist_submission():
    form = ArtistForm(csrf_enabled=True)
    if form.validate_on_submit():
        artist_data = dict(name=form.name.data,
                           genres=list(form.genres.data),
                           city=form.city.data,
                           state=form.state.data,
                           phone=form.phone.data,
                           website=form.website.data,
                           facebook_link=form.facebook_link.data,
                           seeking_venue=form.seeking_venue.data,
                           seek_description=form.seek_description.data,
                           image_link=form.image_link.data)
        check_artist = Artist.query.filter_by(name=form.name.data).first()
        if check_artist:
            flash('Artist with that name already exists')
            return render_template('pages/home.html')
        new_artist = Artist(**artist_data)
        new_artist.save()
        flash('Artist ' + request.form['name'] + ' was successfully added!')
    else:
        errors = form.errors
        for key, error in errors.items():
            flash(f'{key}  Error ' + " => " + f"{error[0]} :(")
    return render_template('pages/home.html')
Пример #4
0
def create_artist_submission():
    # called upon submitting the new artist listing form
    # TODO: insert form data as a new Venue record in the db, instead
    # TODO: modify data to be the data object returned from db insertion
    try:
        seeking_venue = False
        seeking_description = ''
        if 'seeking_venue' in request.form:
            seeking_venue = request.form['seeking_venue'] == 'y'
        if 'seeking_description' in request.form:
            seeking_description = request.form['seeking_description']
        new_artist = Artist(
            name=request.form['name'],
            genres=request.form['genres'],
            city=request.form['city'],
            state=request.form['state'],
            phone=request.form['phone'],
            website=request.form['website'],
            image_link=request.form['image_link'],
            facebook_link=request.form['facebook_link'],
            seeking_venue=seeking_venue,
            seeking_description=seeking_description,
        )
        Artist.insert(new_artist)
        # on successful db insert, flash success
        flash('Artist ' + request.form['name'] + ' was successfully listed!')
    except app as e:
        # TODO: on unsuccessful db insert, flash an error instead.
        # e.g., flash('An error occurred. Artist ' + data.name + ' could not be listed.')
        flash('An error occurred. Artist ' + request.form['name'] +
              'could not be listed. ')

    return render_template('pages/home.html')
Пример #5
0
def create_artist_submission():
    try:
        seeking_venue = False
        seeking_description = ''
        if 'seeking_venue' in request.form:
            seeking_venue = request.form['seeking_venue'] == 'y'
        if 'seeking_description' in request.form:
            seeking_description = request.form['seeking_description']
        new_artist = Artist(name=request.form['name'],
                            genres=request.form.getlist('genres'),
                            city=request.form['city'],
                            state=request.form['state'],
                            phone=request.form['phone'],
                            website=request.form['website'],
                            facebook_link=request.form['facebook_link'],
                            image_link=request.form['image_link'],
                            seeking_venue=seeking_venue,
                            seeking_description=seeking_description)
        Artist.insert(new_artist)
        # on successful db insert, flash success
        flash('Artist ' + request.form['name'] + ' was successfully listed!')
    except SQLAlchemyError as e:
        flash('An error occurred. Artist ' + request.form['name'] +
              ' could not be listed.')

    return render_template('pages/home.html')
    def setUp(self):
        Song.query.delete()
        Album.query.delete()
        Artist.query.delete()

        artist = Artist(name="Nick Danger", logo_url="nickdanger.jpg")

        db.session.add(artist)
        db.session.commit()

        db_artist = Artist.query.filter_by(name="Nick Danger").first()
        artist_id = db_artist.id

        album = Album(title="bigh", year=2019, artist_id=artist_id)

        db.session.add(album)
        db.session.commit()

        db_album = Album.query.filter_by(title="bigh").first()
        album_id = db_album.id

        song_1 = Song(title="Eessennet",
                      artist_id=artist_id,
                      album_id=album_id)

        song_2 = Song(title="bigh", artist_id=artist_id, album_id=album_id)

        db.session.add(song_1)
        db.session.add(song_2)
        db.session.commit()

        self.song_1 = song_1
        self.song_2 = song_2

        self.client = app.test_client()
Пример #7
0
def create_artist_submission():
    form = ArtistForm()
    error = False
    try:
        artist = Artist()
        artist.name = request.form['name']
        artist.city = request.form['city']
        artist.state = request.form['state']
        artist.phone = request.form['phone']
        tmp_genres = request.form.getlist('genres')
        artist.genres = ','.join(tmp_genres)
        artist.website = request.form['website']
        artist.image_link = request.form['image_link']
        artist.facebook_link = request.form['facebook_link']
        artist.seeking_description = request.form['seeking_description']
        db.session.add(artist)
        db.session.commit()
    except:
        error = True
        db.session.rollback()
        print(sys.exc_info())
    finally:
        db.session.close()
        if error:
            flash('An error occurred. Artist ' +
                  request.form['name'] + ' could not be listed.')
        else:
            flash('Artist ' + request.form['name'] +
                  ' was successfully listed!')
        return render_template('pages/home.html')
Пример #8
0
def create_artist_submission():
  # called upon submitting the new artist listing form
  # TODO: insert form data as a new Venue record in the db, instead
  # TODO: modify data to be the data object returned from db insertion

  try:
    form = ArtistForm()

    artist = Artist(
      name=form.name.data,
      city=form.city.data,
      state=form.state.data,
      phone=form.phone.data,
      genres=form.genres.data,
      facebook_link=form.facebook_link.data,
      image_link=form.image_link.data,
      website_link=form.website_link.data, 
      seeking_venue=form.seeking_venue.data,
      seeking_description=form.seeking_description.data
    )

    db.session.add(artist)
    db.session.commit()

    # on successful db insert, flash success
    flash('Artist ' + request.form['name'] + ' was successfully listed!')

  except:
    db.session.rollback()

    # TODO: on unsuccessful db insert, flash an error instead.
    flash('An error occurred. Artist ' + request.form['name'] + ' could not be listed. Bummer dude')
    print(sys.exc_info())

  return render_template('pages/home.html')
Пример #9
0
def create_artist_submission():
    # called upon submitting the new artist listing form
    # TODO: insert form data as a new Venue record in the db, instead
    # TODO(?): modify data to be the data object returned from db insertion
    error = False
    try:
        formdata = {
            k: v[0] if k != "genres" else v
            for k, v in request.form.lists()
        }
        formdata["seeking_venue"] = True if formdata[
            "seeking_venue"] == "y" else False
        artist = Artist(**formdata)
        db.session.add(artist)
        db.session.commit()
    except Exception:
        error = True
        db.session.rollback()
        print(sys.exc_info())
    finally:
        db.session.close()
    if not error:
        # on successful db insert, flash success
        flash("Artist " + request.form["name"] + " was successfully listed!")
    else:
        # TODO: on unsuccessful db insert, flash an error instead.
        # e.g., flash('An error occurred. Artist ' + data.name + ' could not be listed.')
        flash("An error occurred. Artist " + request.form["name"] +
              " could not be listed.")
        # abort(400)

    return render_template("pages/home.html")
Пример #10
0
def create_artist_submission():
  # called upon submitting the new artist listing form
  error = False

  form = ArtistForm()

  try:
    artist = Artist(
      name=form.name.data,
      genres=form.genres.data,
      city=form.city.data,
      state=form.state.data,
      phone=form.phone.data,
      #image_link=request.form['image_link'],
      facebook_link=form.facebook_link.data,
      upcoming_shows_count=0,
      past_shows_count=0
    )
    artist.insert()
  except:
    error = True
    print(sys.exc_info())
    db.session.rollback()
  #finally:
    #db.session.close()
  
  if error:
    abort (400)
    flash('An error occured')
  else:
    # on successful db insert, flash success
    flash('Artist ' + artist.name + ' was successfully listed!')
  
  # e.g., flash('An error occurred. Artist ' + data.name + ' could not be listed.')
  return render_template('pages/home.html')
Пример #11
0
def create_artist_submission():

    # create form :
    form = ArtistForm(request.form)
    #insert object
    artist = Artist(name=form.name.data,
                    city=form.city.data,
                    state=form.state.data,
                    phone=form.phone.data,
                    image_link=form.image_link.data,
                    genres=form.genres.data,
                    facebook_link=form.facebook_link.data,
                    seeking_venue=form.seeking_venue.data,
                    seeking_description=form.seeking_description.data,
                    website=form.website.data)
    # try to add object in data base
    try:
        db.session.add(artist)
        db.session.commit()
        flash('Artist ' + request.form['name'] + ' was successfully listed!')
    except:
        flash('Artist ' + request.form['name'] + ' could not listed!')
    finally:
        db.session.close()

    # called upon submitting the new artist listing form
    # TODO: insert form data as a new Venue record in the db, instead
    # TODO: modify data to be the data object returned from db insertion

    # on successful db insert, flash success
    #flash('Artist ' + request.form['name'] + ' was successfully listed!')
    # TODO: on unsuccessful db insert, flash an error instead.
    # e.g., flash('An error occurred. Artist ' + data.name + ' could not be listed.')
    return render_template('pages/home.html')
Пример #12
0
def create_artist_submission():
  # called upon submitting the new artist listing form
  # TODO: insert form data as a new Venue record in the db, instead
  # TODO: modify data to be the data object returned from db insertion
  error = False
  data = {}
  form =  ArtistForm(request.form)
  try:
    artist = Artist()
    form.populate_obj(artist)
    db.session.add(artist)
    db.session.commit()
    data = artist
  except Exception:
    error = True
    db.session.rollback()
    print(sys.exc_info())
  finally:
    if error:
      flash('An error occurred. Artist ' + request.form['name'] + ' could not be listed.')
    else:
      flash('Artist ' + data.name + ' was successfully listed!')
    db.session.close()

  # on successful db insert, flash success
  # TODO: on unsuccessful db insert, flash an error instead.
  # e.g., flash('An error occurred. Artist ' + data.name + ' could not be listed.')
  return redirect(url_for("index"))
Пример #13
0
def create_artist_submission():
    # called upon submitting the new artist listing form
    # TODO: insert form data as a new Venue record in the db, instead
    # TODO: modify data to be the data object returned from db insertion
    form = ArtistForm(request.form)
    try:
        form.validate()

        artist = Artist(
            name=form.name.data,
            city=form.city.data,
            state=form.state.data.name,
            phone=form.phone.data,
            image_link=form.image_link.data,
            facebook_link=form.facebook_link.data,
            genres=[genre.name for genre in form.genres.data],
            website=form.website.data,
            seeking_venue=form.seeking_venue.data,
            seeking_description=form.seeking_description.data,
        )
        db.session.add(artist)
        db.session.commit()
        # on successful db insert, flash success
        flash('Artist ' + form.name.data + ' was successfully listed!')
    # TODO: on unsuccessful db insert, flash an error instead.
    # e.g., flash('An error occurred. Artist ' + data.name + ' could not be listed.')
    except Exception as e:
        print(e)
        db.session.rollback()
        flash('An error occurred. Artist ' + form.name.data +
              ' could not be listed.')
    return render_template('pages/home.html')
Пример #14
0
def create_artist_submission():
    # called upon submitting the new artist listing form
    # TODO: insert form data as a new Venue record in the db, instead
    # TODO: modify data to be the data object returned from db insertion
    error = False
    try:
        venName = request.form.get('name')
        venCity = request.form.get('city')
        venPhone = request.form.get('phone')
        venState = request.form.get('state')
        venFacebookLink = request.form.get('facebook_link')
        ven = Artist(name=venName,
                     city=venCity,
                     phone=venPhone,
                     state=venState,
                     facebook_link=venFacebookLink)
        db.session.add(ven)
        db.session.commit()
    # TODO: modify data to be the data object returned from db insertion
    except:
        error = True
        db.session.rollback()
        print(sys.exc_info())
    # on successful db insert, flash success
    # db.flash('Venue ' + request.form['name'] + ' was successfully listed!')
    # TODO: on unsuccessful db insert, flash an error instead.
    finally:
        db.session.close()
    if error:
        abort(400)
    else:
        return render_template('pages/home.html')
Пример #15
0
def create_artist_submission():
  name = request.form.get('name')
  city = request.form.get('city')
  state = request.form.get('state')
  phone = request.form.get('phone')
  genres = request.form.get('genres')
  facebook_link = request.form.get('facebook_link')
  
  new_artist = Artist(name=name,
                    city=city,
                    state=state,
                    phone=phone,
                    genres=genres,
                    image_link='www.imagelink.com' + request.form.get('name'),
                    facebook_link=facebook_link
                    )
  
  try:
      db.session.add(new_artist)
      db.session.commit()
      flash('Artist ' + name + ' was successfully listed!')
  except:
      # see: http://flask.pocoo.org/docs/1.0/patterns/flashing/  
      flash('An error occurred. Artist ' + name + ' could not be listed.')
  finally:
      return render_template('pages/home.html')
Пример #16
0
def create_artist_submission():
    # called upon submitting the new artist listing form
    try:
        # add data from form to venue object
        artist = Artist(
            name=request.form.get('name'),
            city=request.form.get('city'),
            state=request.form.get('state'),
            phone=request.form.get('phone'),
            genres=request.form.getlist('genres'),
            image_link=request.form.get('image_link'),
            facebook_link=request.form.get('facebook_link'),
            website=request.form.get('website'),
            seeking_venue=True if 'seeking_venue' in request.form else False,
            seeking_description=request.form.get('seeking_description'))
        db.session.add(artist)
        db.session.commit()
        flash('Artist ' + request.form['name'] + ' was successfully listed!'
              )  # on successful db insert, flash success
    except ValueError as e:
        print(e)
        # on unsuccessful db insert, flash an error instead.
        flash('Artist ' + request.form['name'] + ' was not listed!')
        db.session.rollback()
    finally:
        db.session.close()

    return render_template('pages/home.html')
Пример #17
0
Файл: app.py Проект: zpcore/FSND
def create_artist_submission():
  # called upon submitting the new artist listing form
  error = False
  try:
    artist = Artist(name=request.form['name'],
                    city=request.form['city'], 
                    state=request.form['state'], 
                    phone=request.form['phone'], 
                    genres=request.form.getlist('genres'), 
                    image_link=request.form['image_link'],
                    seeking_venue = request.form['seeking_venue']=="True",
                    facebook_link=request.form['facebook_link'],
                    website=request.form['website'],
                    )
    
    db.session.add(artist)
    db.session.commit()
  except:
    error = True
    db.session.rollback()
    print(sys.exc_info())
  finally:
    db.session.close()
  if error:
    flash('An error occurred. Artist ' + request.form['name']  + ' could not be listed.')
    abort(400)
  else:
    flash('Artist ' + request.form['name'] + ' was successfully listed!')
    return render_template('pages/home.html')
Пример #18
0
def create_artist_submission():
    # called upon submitting the new artist listing form
    error = False
    form = ArtistForm()
    try:
        create_artist = Artist(
            name=form.name.data,
            city=form.city.data,
            state=form.state.data,
            phone=form.phone.data,
            genres=form.genres.data,
            facebook_link=form.facebook_link.data,
            website=form.website.data,
            image_link=form.image_link.data,
            seeking_venue=form.seeking_venue.data,
            seeking_description=form.seeking_description.data)
        db.session.add(create_artist)
        db.session.commit()
    except:
        error = True
        db.session.rollback()
    finally:
        db.session.close()
    if error:
        # on error, flash error message
        flash(
            'An error occurred. Artist ' + form.name.data +
            ' could not be listed.', 'error')
        return render_template('forms/new_artist.html', form=form)
    else:
        # on successful db insert, flash success
        flash('Artist ' + form.name.data + ' was successfully listed!',
              'success')

    return redirect(url_for('artists'))
Пример #19
0
def create_artist_submission():
    """ create artists submission """
    try:
        name = request.form.get("name")
        genres = request.form.getlist("genres[]")
        city = request.form.get("city")
        state = request.form.get("state")
        phone = request.form.get("phone")
        website = request.form.get("website_link")
        image_link = request.form.get("image_link")
        facebook_link = request.form.get("facebook_link")
        seeking_venue = True if 'seeking_venue' in request.form else False
        seeking_description = request.form.get("seeking_description")

        artist = Artist(
            name=name,
            genres=genres,
            city=city,
            state=state,
            phone=phone,
            website=website,
            facebook_link=facebook_link,
            image_link=image_link,
            seeking_venue=seeking_venue,
            seeking_description=seeking_description,
        )
        db.session.add(artist)
        db.session.commit()

        flash('Artist ' + request.form['name'] + ' was successfully listed!')
    except Exception as e:
        flash('Artist ' + request.form['name'] +
              ' could not be listed due to error:- ' + str(e))

    return render_template('pages/home.html')
Пример #20
0
def create_artist_submission():
    form = ArtistForm(request.form)
    error = False

    try:
        newArtist = Artist(name=form.name.data,
                           city=form.city.data,
                           state=form.state.data,
                           phone=form.phone.data,
                           genres=form.genres.data,
                           facebook_link=form.facebook_link.data,
                           image_link=form.image_link.data,
                           website=form.website.data,
                           seeking_venue=form.seeking_venue.data,
                           seeking_description=form.seeking_description.data)
        db.session.add(newArtist)
        db.session.commit()
    except:
        error = True
        db.session.rollback()
        print(sys.exc_info())
    finally:
        db.session.close()
    if error:
        flash('An error occurred. Artist ' + request.form['name'] +
              ' could not be listed.')
    if not error:
        flash('Artist ' + request.form['name'] + ' was successfully listed!')
    return render_template('pages/home.html')
Пример #21
0
def create_artist_submission():
    # called upon submitting the new artist listing form
    try:
        seeking_venue = False
        description = ''
        if 'seeking_venue' in request.form:
            seeking_venue = request.form['seeking_venue'] == 'y'
        if 'description' in request.form:
            description = request.form['description']

        new_artist = Artist(name=request.form['name'],
                            city=request.form['city'],
                            state=request.form['state'],
                            phone=request.form['phone'],
                            genres=request.form['genres'],
                            facebook_link=request.form['facebook_link'],
                            image_link=request.form['image_link'],
                            website=request.form['website'],
                            seeking_venue=seeking_venue,
                            seeking_description=description)
        db.session.add(new_artist)
        db.session.commit()
        # on successful db insert, flash success
        flash('Artist ' + request.form['name'] + ' was successfully listed!')
    except SQLAlchemyError as e:
        db.session.rollback()
        flash(e)
    finally:
        db.session.close()
        flash('An error occurred. Artist could not be listed.')
    return render_template('pages/home.html')
Пример #22
0
def create_artist_submission():
    # called upon submitting the new artist listing form
    # TODO: insert form data as a new Venue record in the db, instead
    # TODO: modify data to be the data object returned from db insertion

    print(request.form)

    form = ArtistForm(request.form)
    # create a new Venue object and add to the db
    artist = Artist(name=form.name.data,
                    city=form.city.data,
                    state=form.state.data,
                    phone=form.phone.data,
                    genres=form.genres.data,
                    website=form.website.data,
                    facebook_link=form.facebook_link.data,
                    image_link=form.image_link.data,
                    seeking_venue=True if form.seeking.data == 'Yes' else False,
                    seeking_description=form.seeking_description.data)

    try:
        # on successful db insert, flash success
        db.session.add(artist)
        db.session.commit()
        flash('Artist ' + request.form['name'] + ' was successfully listed!')
    except:
        # TODO: on unsuccessful db insert, flash an error instead.
        # e.g., flash('An error occurred. Artist ' + data.name + ' could not be listed.')
        db.session.rollback()
        flash('Error! issue faced while trying to add ' + request.form['name'])
    finally:
        db.session.close()

    return render_template('pages/home.html')
Пример #23
0
def create_artist_submission():
    form = ArtistForm(request.form)
    if form.validate_phone(form.phone):
        try:
            new_artist = Artist(
                name=form.name.data,
                city=form.city.data,
                state=form.state.data,
                phone=form.phone.data,
                genres=form.genres.data,
                facebook_link=form.facebook_link.data,
                image_link=form.image_link.data,
                website=form.website.data,
                seeking_venue=form.seeking_venue.data,
                seeking_description=form.seeking_description.data)
            Artist.create(new_artist)
            flash(
                'Artist ' + request.form['name'] + ' was successfully listed!',
                "success")
        except:
            flash(
                'An error occurred. Artist ' + form.name +
                ' could not be listed.', "danger")
    else:
        flash("Phone number is not valid", "warning")

    return render_template('pages/home.html')
Пример #24
0
def create_artist_submission():
    # called upon submitting the new artist listing form
    # TODO: insert form data as a new Venue record in the db, instead
    # TODO: modify data to be the data object returned from db insertion
    try:
        name = request.form.get('name', '')
        city = request.form.get('city', '')
        state = request.form.get('state', '')
        phone = request.form.get('phone', '')
        genres = request.form.get('genres', '')
        image_link = request.form.get('image_link', '')
        facebook_link = request.form.get('facebook_link', '')
        artist = Artist(name=name,
                        city=city,
                        state=state,
                        phone=phone,
                        image_link=image_link,
                        facebook_link=facebook_link,
                        genres=genres)
        db.session.add(artist)
        db.session.commit()
        flash('Venue ' + request.form.get('name', '') +
              ' was successfully listed!')
    except:
        db.session.rollback()
        flash('An error occurred. Venue ' + request.form.get('name', '') +
              ' could not be listed.')
    finally:
        db.session.close()

    # on successful db insert, flash success
    # TODO: on unsuccessful db insert, flash an error instead.
    # e.g., flash('An error occurred. Artist ' + data.name + ' could not be listed.')
    return render_template('pages/home.html')
Пример #25
0
def populate_artists():
    # artists = [line.strip() for line in open("artists.json", "r")]
    artists = []
    with open('artists.json') as f:
        data = j.load(f)
    artists = data["Artists"]

    for artist in artists:
        name = artist.get('name')
        birth = artist.get('birth')
        death = artist.get('death')
        birthplace = artist.get('birthplace')
        deathplace = artist.get('deathplace')
        culture = artist.get('culture')

        if not birth:
            break

        if name and birth and birthplace and culture and (
            (death and deathplace) or not (death or deathplace)):
            new_entry = Artist(name=name,
                               birth=birth,
                               death=death,
                               birthplace=birthplace,
                               deathplace=deathplace,
                               culture=culture,
                               image_url=artist.get('image_url'))
            print('ADDED: {}'.format(name))
            db.session.add(new_entry)
        else:
            print('SKIPPED: {}'.format(name))

    db.session.commit()
Пример #26
0
def create_artist_submission():
    # Getting the user's input
    data = {}
    data['name'] = request.form.get('name')
    data['city'] = request.form.get('city')
    data['state'] = request.form.get('state')
    data['phone'] = request.form.get('phone')
    data['genres'] = request.form.getlist('genres')
    data['image_link'] = request.form.get('image_link')
    data['facebook_link'] = request.form.get('facebook_link')
    data['website'] = request.form.get('website')
    data['seeking_venue'] = True if request.form.get(
        'seeking_venue') == 'y' else False
    data['seeking_description'] = request.form.get('seeking_description')

    try:
        # Try to insert into the table
        newArtist = Artist(**data)
        db.session.add(newArtist)
        db.session.commit()

        # on successful db insert, flash success
        flash('Artist ' + request.form.get('name') +
              ' was successfully listed!')
    except Exception:
        db.session.rollback()
        print(sys.exc_info())
        flash('An error occurred. Artist ' + request.form.get('name') +
              ' could not be listed.')
    finally:
        db.session.close()

    return render_template('pages/home.html')
Пример #27
0
def create_artist_submission():

    # called upon submitting the new artist listing form
    try:

        artist_data = request.form
        artist_form = ArtistForm(artist_data)
        # if artist_form.validate_on_submit():
        artist = Artist()
        artist_form.populate_obj(artist)
        db.session.add(artist)
        db.session.commit()

        # on successful db insert, flash success
        flash('Artist ' + artist_data['name'] + ' was successfully listed!')
    except Exception:
        db.session.rollback()

        flash('An error occurred. Artist ' + artist_data['name'] +
              ' could not be listed.')

        print(sys.exc_info())
    finally:
        db.session.close()

    return render_template('pages/home.html')
Пример #28
0
def create_artist_submission():
    # called upon submitting the new artist listing form
    # TODO: insert form data as a new Venue record in the db, instead
    # TODO: modify data to be the data object returned from db insertion
    try:
        artist = Artist(name=request.form['name'],
                        city=request.form['city'],
                        state=request.form['state'],
                        phone=request.form['phone'],
                        facebook_link=request.form['facebook_link'],
                        seeking_venue=False)
        genres = request.form['genres']
        artist.add_genres(genres)

        db.session.add(artist)
        db.session.commit()
        flash('Artist ' + request.form['name'] + ' was successfully listed!')
    except Exception as error:
        print(error)
        db.session.rollback()
        # TODO: on unsuccessful db insert, flash an error instead.
        flash('An error occurred. Artist ' + request.form['name'] +
              ' could not be listed.')
    finally:
        db.session.close()

    return render_template('pages/home.html')
Пример #29
0
Файл: app.py Проект: gafeol/FSND
def create_artist_submission():
  error = False
  try:
    artist = Artist(
      name=request.form['name'],
      city=request.form['city'],
      state=request.form['state'],
      phone=request.form['phone'],
      genres=request.form.getlist('genres'),
      image_link=request.form['image_link'],
      facebook_link=request.form['facebook_link'],
      website=request.form['website'],
      seeking_venue=('seeking_venue' in request.form.keys()),
      seeking_description=request.form['seeking_description']
    )
    db.session.add(artist)
    db.session.commit()
  except:
    error = True
    db.session.rollback()
    print(sys.exc_info())
  finally:
    db.session.close()

  if(error):
    flash('An error occurred. Artist ' + request.form['name'] + ' could not be listed.')
  else:
    flash('Artist ' + request.form['name'] + ' was successfully listed!')

  return render_template('pages/home.html')
Пример #30
0
def create_artist_submission():

    form = ArtistForm()
    data = request.form
    try:
        seeking_venue = None
        if 'seeking_venue' in request.form:
            seeking_venue = request.form['seeking_venue'] == 'y'

        new_artist = Artist(
            name=data.get("name"),
            genres=data.getlist("genres[]"),
            city=data.get("city"),
            state=data.get("state"),
            phone=data.get("phone"),
            website=data.get("website_link"),
            seeking_venue=seeking_venue,
            facebook_link=data.get("facebook_link"),
            seeking_description=data.get("seeking_description"),
            image_link=data.get("image_link"))
        Artist.insert(new_artist)
        flash('Artist ' + request.form['name'] + ' was successfully listed!')
    except SQLAlchemyError as e:
        flash('An error occurred. Artist ' + request.form['name'] +
              ' could not be listed.')

    return render_template('pages/home.html')