Tema ar trebui sa va ia aproximativ 1-2 ore cu tot cu extra study.
In aplicatie aveti 3 modele, ca la curs: Song, Author si Playlist
Task-uri:
-
Daca nu aveti deja proiectul de la curs, fork-uiti repository-ul acesta pe repo-ul vostru dupa care clonati-l la voi pe laptop
-
Intrati in consola ($rails console) si creati 3 cantece, 3 autori si 3 playlist-uri dupa forma:
song = Song.new(:title => "Song1", :duration => 120) song.build_author(:name => "Author1", :year => DateTime.new(1980)) song.build_playlist(:name => "Playlist1", :player_name => "Winamp") song.save song = Song.new(:title => "Song2", :duration => 150) song.build_author(:name => "Author2", :year => DateTime.new(1990)) song.build_playlist(:name => "Playlist2", :player_name => "Winamp") song.save song = Song.new(:title => "Song3", :duration => 220) song.build_author(:name => "Author3", :year => DateTime.new(2000)) song.build_playlist(:name => "Playlist3", :player_name => "FooBar") song.save
2 Creati o actiune noua numita “filter” in controller-ul songs si afisati sub ce forma preferati:
2.1. Cantecele care dureaza mai mult de 140 de secunde
2.2. Cantecele dintre anii 1970 si 1995
2.3. Playlist-urile pentru winamp
2.4. Cantecele care sunt cantate in Winamp
2.5. Cantecele ai caror autori au anul mai mare de 1985
2.6. Autorii care au in nume “Author”
-
Adaugati coloana listen_count de tip integer la tabela Song si de fiecare data cand se intra in pagina unui Song, incrementati contorul
Referinte:
-
stackoverflow.com/questions/9192130/like-clause-with-rails-3-and-sqlite
-
Prezentarea de la curs pe care o gasiti in folder-ul “docs”
Daca aveti rails 4 si intrati in consola si aveti problema aceasta:
1.9.3-p448 :001 > Playlist
Playlist(no database connection)
Dati comanda: Playlist.connection
Ca sa aduceti in consola modificarile pe care le-ati facut in proiect, rulati: reload! in consola de Rails