def task_4_artists_create_song(): """Should create a new song for B.B. King artist""" bbKing = Artist.objects.get(artistic_name__iexact="B.B. King") new_song = Song(artist_id=bbKing.pk, title="New Jam", album_name="New Album") new_song.save()
def task_4_artists_create_song(): """Should create a new song for Ed Sheeran artist""" sheeran_id = Artist.objects.get(artistic_name='Ed Sheeran').id new_song = Song(artist_id=sheeran_id, title='My new song', album_name='My new album') new_song.save()
def task_4_artists_create_song(): """Should create a new song for B.B. King artist""" new_song = Song() new_song.artist_id = 3 new_song.title = 'my new title' new_song.album = 'greatest hits' new_song.save() return new_song
def task_4_artists_create_song(): """Should create a new song for B.B. King artist""" bbKing = Song() bbKing.artist_id = Artist.objects.get(artistic_name="B.B. King").id bbKing.title = "That one with Eric Clapton" bbKing.album_name = "That album with Eric Clapton" bbKing.save() """
def savePlaylist(request, rand_digits): print("running savePlaylist, url below") url = request.POST.get('url') print(url) if url is not None: print(url.__len__()) email = request.POST.get('email') print("email: " + email) playlist = request.POST.get('playlist') print("received playlist: " + playlist) songs = request.POST.get('songs') data = json.loads(songs) print("playlist length: " + str(len(data))) numurls = URL.objects.count() print("numurls: " + str(numurls)) # minimize collisions where we have to generate another random url if numurls > ((math.pow(numpossibles, rand_digits[0])) / 2): rand_digits[0] += 1 print("url length: " + str(rand_digits[0])) # if the playlist is new and isn't in the database yet if (url is None) or (url.__len__() == 0): goodsave = False while goodsave == False: try: randomurl = urlGenerator(rand_digits[0]) playlisturl = URL(url_text=randomurl, user_email=email) playlisturl.save() goodsave = True except IntegrityError, e: print("URL was not unique, generating another one...") print("successfully found random url: " + randomurl) playlist = Playlist(playlist_text=playlist, url=playlisturl, numsongs=len(data)) playlist.save() #now that the playlist is saved, insert the songs to complete relationship for x in range(len(data)): print(data[x]) song = Song(song_id=data[x]['id'], song_name=data[x]['name'], artist_name=data[x]['artist'], album_name=data[x]['album']) song.save() song.playlist.add(playlist) print(playlist.song_set.all()) # return the url assigned to the playlist return HttpResponse({simplejson.dumps(randomurl)})
def savePlaylist(request, rand_digits): print("running savePlaylist, url below") url = request.POST.get('url') print(url) if url is not None: print(url.__len__()) email = request.POST.get('email') print("email: " + email) playlist = request.POST.get('playlist') print("received playlist: " + playlist) songs = request.POST.get('songs') data = json.loads(songs) print("playlist length: " + str(len(data))) numurls = URL.objects.count() print("numurls: " + str(numurls)) # minimize collisions where we have to generate another random url if numurls > ((math.pow(numpossibles, rand_digits[0])) / 2): rand_digits[0] += 1 print("url length: " + str(rand_digits[0])) # if the playlist is new and isn't in the database yet if (url is None) or (url.__len__() == 0): goodsave = False while goodsave == False: try: randomurl = urlGenerator(rand_digits[0]) playlisturl = URL(url_text=randomurl, user_email=email) playlisturl.save() goodsave = True except IntegrityError, e: print("URL was not unique, generating another one...") print("successfully found random url: " + randomurl) playlist = Playlist(playlist_text=playlist, url=playlisturl, numsongs=len(data)) playlist.save() #now that the playlist is saved, insert the songs to complete relationship for x in range (len(data)): print(data[x]) song = Song(song_id=data[x]['id'], song_name=data[x]['name'], artist_name=data[x]['artist'], album_name=data[x]['album']) song.save() song.playlist.add(playlist) print(playlist.song_set.all()) # return the url assigned to the playlist return HttpResponse({simplejson.dumps(randomurl)})
cursor = connection.cursor() print("backend overwriting prior version of playlist") for x in URL.objects.raw('SELECT * FROM artists_URL WHERE user_email = %s AND url_text=%s', [email, url]): print(x) playlistref = x.playlist_set.get(playlist_text=playlist) print(playlistref) # remove all songs in the playlist for y in playlistref.song_set.all(): print(y) y.delete() # re-enter songs from new version counter = 0 for z in range (len(data)): print(data[z]) song = Song(song_id=data[z]['id'], song_name=data[z]['name'], artist_name=data[z]['artist'], album_name=data[z]['album']) song.save() song.playlist.add(playlistref) counter = counter + 1 playlistref.numsongs = counter; playlistref.save() return HttpResponse("successful overwrite, no new url") # this function generates a random string of default size 6 from the alphabet and digits - accounting for both # lower and upper case letters, there are 62 possible choices for a single char in the URL def urlGenerator(size=6, chars=string.ascii_uppercase + string.ascii_lowercase + string.digits): return ''.join(random.choice(chars) for x in range(size)) def printJSONEntry(entry): for key, value in entry.iteritems(): print key, value
def task_4_artists_create_song(): """Should create a new song for Ed Sheeran artist""" artist = Artist.objects.get(artistic_name="Ed Sheeran") a = Song(title="songtitle", album_name="albumname", artist_id=artist.id) a.save()
def task_4_artists_create_song(): """Should create a new song for B.B. King artist""" b=Song(title='This is a Song', artist_id = 3, album_name='This is an album') b.save()
def task_4_artists_create_song(): artist = Artist.objects.get(artistic_name = 'B.B. King') new_song = Song(artist_id=artist.id, title='Hello World', album_name='Python') new_song.save()
print(x) playlistref = x.playlist_set.get(playlist_text=playlist) print(playlistref) # remove all songs in the playlist for y in playlistref.song_set.all(): print(y) y.delete() # re-enter songs from new version counter = 0 for z in range(len(data)): print(data[z]) song = Song(song_id=data[z]['id'], song_name=data[z]['name'], artist_name=data[z]['artist'], album_name=data[z]['album']) song.save() song.playlist.add(playlistref) counter = counter + 1 playlistref.numsongs = counter playlistref.save() return HttpResponse("successful overwrite, no new url") # this function generates a random string of default size 6 from the alphabet and digits - accounting for both # lower and upper case letters, there are 62 possible choices for a single char in the URL def urlGenerator(size=6, chars=string.ascii_uppercase + string.ascii_lowercase + string.digits): return ''.join(random.choice(chars) for x in range(size))
def task_4_artists_create_song(): """Should create a new song for B.B. King artist""" s = Song(artist_id=Artist.objects.get(artistic_name='B.B. King').id) return s.save()
def task_4_artists_create_song(): """Should create a new song for B.B. King artist""" bbKing = Artist.objects.get(artistic_name__iexact='b.b. king') new_song = Song(artist_id=bbKing.pk, title='Dude Song', album_name='Edition #2') new_song.save()