ThuisBalletje
TrainingenBalletje
ConsultancyBalletje
Blog Balletje
Faker Gem
24-01-2008

Snel een rails app met fake data

We zijn als rails developers meerdere malen test apps aan het maken met weinig of geen data. En elke keer ook nieuwe records aanmaken schiet ook niet op. Vaak hebben we nog hetzelfde model ook waar we elke keer op testen.

Dus we gaan dit op een DRY manier aanpakken en wel met de → faker gem van Benjamin Curtis. Installatie is op de welbekende manier:

> sudo gem install faker

OK. We gaan ff voor een demo naar irb.

irb(main):001:0> require 'rubygems'

irb(main):002:0> require 'faker'

irb(main):003:0> voornaam = Faker::Name.first_name

=> "Rafaela"

irb(main):004:0> achternaam = Faker::Name.last_name

=> "Stroman"

irb(main):005:0> email = Faker::Internet.email

=> "lorenz_hagenes@emmerich.ca"

Hartstikke cool natuurlijk. Dit kunnen we perfect verwerken in een migration die dat lekker automatisch voor ons gaat uitvoeren. De faker gem is wel amerikaans/engels georiƫnteerd maar dat vind ik niet echt een probleem. Wel vreemd dat er geen 'city' mogelijkheid is


We gaan eerst een model Werknemer aanmaken. Eerst de rails map aanmaken en cd'en maar dat is bekende koek.

> ./script/generate model Werknemer

Dit levert ons een migration op die we als volgt gaan bewerken:


alt_tekst


En daarna de migration runnen en we hebben data.


> rake db:migrate


alt_tekst

Geweldig toch. Dat scheelt een hoop tikken. Verder is dit eigenlijk de voorbereiding op een komend artikel waar ik dit voor nodig had.