Class: Seeding::CreateSeed
- Inherits:
-
Object
- Object
- Seeding::CreateSeed
- Defined in:
- lib/seeding/create_seed.rb
Instance Method Summary collapse
- #create(query_results) ⇒ Object
-
#query(q = {}) ⇒ Object
Pass in Activerecord query like Seedy::CreateSeed.new.query = true).
Instance Method Details
#create(query_results) ⇒ Object
12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
# File 'lib/seeding/create_seed.rb', line 12 def create(query_results) klass = query_results[0].class.name # Create a uuid for the filename so it can't overwrite anything accidentially uuid = UUID.new.generate File.open("seeding-#{klass}-" + uuid + ".rb" , 'w') do |file| file.puts "# -*- encoding: utf-8 -*" query_results.each_with_index.map do |v| attrib = v.attributes.keys str = "#{klass}.create! " attrib.each do |at| if v[at].class.to_s == "Fixnum" str << " :#{at} => #{v[at]}, " else temp_string = v[at].to_s.gsub("\"", "\\\"") str << " :#{at} => \"#{temp_string}\", " end end # todo: Clean this up str << "**" str.gsub!(", **", "") str << "\n" file.puts str file.puts "print \".\"" end end end |
#query(q = {}) ⇒ Object
Pass in Activerecord query like Seedy::CreateSeed.new.query = true)
7 8 9 10 |
# File 'lib/seeding/create_seed.rb', line 7 def query(q={}) @seedy_result = yield create @seedy_result end |