Пример #1
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:
        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')
        new_record = Artist(name=name,
                            city=city,
                            state=state,
                            phone=phone,
                            genres=genres,
                            image_link=image_link,
                            facebook_link=facebook_link)
        Artist.create(new_record)
    except:
        db.session.rollback()
        print(sys.exc_info())
        error = True
    finally:
        if error:
            flash('An error occurred. It could not be listed.')
            return render_template('pages/home.html')
        else:
            flash('Artist ' + request.form['name'] +
                  ' was successfully listed!')
            return render_template('pages/home.html')
        db.session.close()
Пример #2
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')
Пример #3
0
def create_artist_submission():
    form = ArtistForm(request.form)

    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!')

    except ValueError:  # FIXME melhorar essa exception

        flash('An error occurred. Artist ' + form.name +
              ' could not be listed.')

    return render_template('pages/home.html')
Пример #4
0
def get_artists():
    artist_list = json.loads(
        requests.get(
            'http://animethemes-api.herokuapp.com/api/db/print_all_artist').
        content)
    for item in artist_list:
        Artist.create(name=item['name'],
                      mal_id=item['mal_id'],
                      cover=item['cover'],
                      themes=item['themes'])
Пример #5
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

  Artist.create(request.form.get)

  # 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')
Пример #6
0
def create():
    try:
        name, email = get_name_and_email()
        artist = Artist.create(name=name, email=email)
        ui.display('Success')
        ui.display(format_artist(artist))
    except IntegrityError:
        ui.display('Artist already exists')
Пример #7
0
def add_artist(name_in, email_in):
    try:
        artist = Artist.create(artist_name=name_in, email=email_in)
        artist.save()
        return 'Artist saved.'
    except DatabaseError:  #as de:
        #return de
        return 'There was an error in adding the artist. Make sure they aren\'t already in database.'
Пример #8
0
    def setUp(self):
        # Bind model classes to test db. Since we have a complete list of
        # all models, we do not need to recursively bind dependencies.
        test_db.bind(MODELS, bind_refs=False, bind_backrefs=False)

        test_db.connect()
        test_db.create_tables(MODELS)
        self.artist = Artist.create(name='sample artist',
                                    email='*****@*****.**')
Пример #9
0
def create_artist_submission():
    form = ArtistForm(request.form)
    try:
        artist = Artist.create(form)
        flash('Artist ' + artist.name + ' was successfully listed!')
    except (DBAPIError, SQLAlchemyError):
        flash('An error occurred. Artist ' + request.form["name"] +
              ' could not be listed.')

    return render_template('pages/home.html')
Пример #10
0
def parse_artist(entry):
    name = entry.getText()
    print(name)
    wiki = entry.find('a').get('href').split('/')[4:]
    page = reddit.subreddit('AnimeThemes').wiki['/'.join(wiki)].content_html
    body = BeautifulSoup(page, 'html.parser')
    mal_url = body.find('h2').find('a').get('href')
    if 'myanimelist' not in mal_url:
        mal_id = None
    else:
        mal_id = body.find('h2').find('a').get('href').split('/')[-1]
        if not mal_id:
            mal_id = body.find('h2').find('a').get('href').split('/')[-2]
        mal_id = int("".join(filter(str.isdigit, mal_id)))
    if name == 'OxT':
        mal_id = 12596
    if name == 'Spira*Spica':
        mal_id = 51708
    return Artist.create(mal_id, name, get_cover(mal_id), parse_themes(body))
Пример #11
0
def main():
    new_artist = Artist.create(name="Newsboys")
    new_album = Album(
        artist=new_artist,
        title="Album title",
        publisher="Sparrow",
        release_date=datetime.date(1988, 12, 1),
        media_type="CD",
    )
    new_album.save()

    # batch save

    albums = [{
        "artist": new_artist,
        "title": "Hell is for Wimps",
        "release_date": datetime.date(1990, 7, 31),
        "publisher": "Sparrow",
        "media_type": "CD"
    }, {
        "artist": new_artist,
        "title": "Love Liberty Disco",
        "release_date": datetime.date(1999, 11, 16),
        "publisher": "Sparrow",
        "media_type": "CD"
    }, {
        "artist": new_artist,
        "title": "Thrive",
        "release_date": datetime.date(2002, 3, 26),
        "publisher": "Sparrow",
        "media_type": "CD"
    }]

    for album in albums:
        a = Album(**album)
        a.save()

    bands = ["MXPX", "Kutless", "Thousand Foot Krutch"]
    for band in bands:
        artist = Artist(name=band)
        artist.save()

    print("[+] done")
Пример #12
0
def addArtist(id3_artist_name, path):
  musicbrainz_artist = musicbrainz.getBestArtistMatch(id3_artist_name)

  if musicbrainz_artist is None:
    unique_name = id3_artist_name
    artist_mb_id = None
  else:
    unique_name = musicbrainz_artist.getUniqueName()
    artist_mb_id = utils.extractUuid(musicbrainz_artist.id)

  try:
    artist = Artist.get(peewee.Q(musicbrainz_id=artist_mb_id) | peewee.Q(unique_name=unique_name))
  except peewee.DoesNotExist:
    artist = Artist.create(
        name = id3_artist_name,
        unique_name = unique_name,
        location = path,
        state = 'wanted',
        musicbrainz_id = artist_mb_id)

  return artist
Пример #13
0
# add_data.py

import datetime
import peewee

from models import Album, Artist

new_artist = Artist.create(name="Newsboys")
album_one = Album(artist=new_artist,
                  title="Read All About It",
                  release_date=datetime.date(1988, 12, 1),
                  publisher="Refuge",
                  media_type="CD")
album_one.save()

albums = [{
    "artist": new_artist,
    "title": "Hell is for Wimps",
    "release_date": datetime.date(1990, 7, 31),
    "publisher": "Sparrow",
    "media_type": "CD"
}, {
    "artist": new_artist,
    "title": "Love Liberty Disco",
    "release_date": datetime.date(1999, 11, 16),
    "publisher": "Sparrow",
    "media_type": "CD"
}, {
    "artist": new_artist,
    "title": "Thrive",
    "release_date": datetime.date(2002, 3, 26),
Пример #14
0
# add_data.py
import datetime
import peewee
from models import Album, Artist
 
new_artist = Artist.create(name="Newsboys")
album_one = Album(artist=new_artist,
                  title="Read All About It",
                  release_date=datetime.date(1988,12,01),
                  publisher="Refuge",
                  media_type="CD")
album_one.save()
 
albums = [{"artist": new_artist,
           "title": "Hell is for Wimps",
           "release_date": datetime.date(1990,07,31),
           "publisher": "Sparrow",
           "media_type": "CD"
           },
          {"artist": new_artist,
           "title": "Love Liberty Disco", 
           "release_date": datetime.date(1999,11,16),
           "publisher": "Sparrow",
           "media_type": "CD"
          },
          {"artist": new_artist,
           "title": "Thrive",
           "release_date": datetime.date(2002,03,26),
           "publisher": "Sparrow",
           "media_type": "CD"}
          ]
Пример #15
0
 def test_artist_created(self):
     name = 'artist name'
     email = '*****@*****.**'
     artist = Artist.create(name=name, email=email)
     self.assertTrue(artist.name == name)
     self.assertTrue(artist.email == email)
Пример #16
0
 def test_artist_empty_email_constraints(self):
     name = 'artist name'
     with self.assertRaises(IntegrityError):
         Artist.create(name=name)
Пример #17
0
 def test_artist_empty_name_constraints(self):
     email = '*****@*****.**'
     with self.assertRaises(IntegrityError):
         Artist.create(email=email)
Пример #18
0
 def test_artist_unique_email_constraints(self):
     name = 'artist name'
     email = '*****@*****.**'
     Artist.create(name=name, email=email)
     with self.assertRaises(IntegrityError):
         Artist.create(name='new name', email=email)