Skip to content

Instantly share code, notes, and snippets.

@chyld
Created August 26, 2012 19:43
Show Gist options
  • Save chyld/3483011 to your computer and use it in GitHub Desktop.
Save chyld/3483011 to your computer and use it in GitHub Desktop.
mixtape rake
namespace :mixtape do
desc 'Create songs for mixtape application'
task :create_song_data => [:environment, :delete_song_and_artist_data] do
# Build Song Off Artist
# Given a Song called R.E.S.P.E.C.T
# build the Aretha Franklin Artist
s = Song.create(:name => "R.E.S.P.E.C.T")
s.build_artist(:name => "Aretha Franklin")
s.save
# Build a Song for that Artist
# a = Artist.find_by_name(s.artist.name)
a = s.artist
# build song Natural Woman
# a.songs << Song.create
a.songs.create(:name => "Natural Woman")
#a.save
# Manually Create Artist Kanye West
kayne = Artist.create(:name => "Kanye West")
# Push a Song Onto an Artist
kayne.songs << Song.create(:name => "Stronger")
# kayne.songs.push(Song.create(:name => "Stronger"))
# push a song onto Kanye West
# Create Michael Jackson Artist
michael = Artist.create(:name => "Michael Jackson")
# Make 3 Michael Jackson Songs
ms1 = Song.create(:name => "Thriller")
ms2 = Song.create(:name => "Billy Jean")
ms3 = Song.create(:name => "Annie are you ok?")
# push all songs by Michael Jackson
michael.songs = [ms1, ms2, ms3]
# Delete one michael song off of michael
michael.songs.delete(ms3)
end
desc 'Deleting song and artist data'
task :delete_song_and_artist_data => [:environment] do
Artist.delete_all
Song.delete_all
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment