require ‘faker’
require ‘populator’
require ‘date’
Dbase.destroy_all
User.destroy_all
Table.destroy_all
100.times do
u = User.new
u.username = Faker::Internet.user_name
u.email = Faker::Internet.email
u.password = “test”
u.password_confirmation = “test”
u.save
end
I am using the Faker gem to load sample data in my app. I have three
models, user, dbase and table.
The table gets created under every dbase so I want it’s column ‘dbase’
tp have the same value as the dbase.name that was created above.
Please see the code :
10.times do
u = User.find(id = rand(User.count))
db = Dbase.new
db.name = Faker::Company.name
db.vendor = Faker::Company.name
db.location = [ Faker::Address.city ,
Faker::Address.us_state_abbr ].join(’.’)
db.port = 50000
db.defuser = u.username
t1 = Faker::Company.name
Table.populate(rand(10)) do |tab|
tab.schema_name = t1
tab.tab_name = Faker::Company.name
tab.dbase = db.name #here it says undefined method `db' for
main:Object.
tab.created_by = Faker::Name.name
tab.created_on = Date.today.to_s
tab.logged = rand(2)
end
db.save
end
I can accompolish the same using rails console so I am assuming the
console holds the value in cache while this doesn’t commit or
something.
Can anyone help on how to accomplish this?