Skip to content

Instantly share code, notes, and snippets.

@cwise
Created November 5, 2010 10:59
Show Gist options
  • Save cwise/663978 to your computer and use it in GitHub Desktop.
Save cwise/663978 to your computer and use it in GitHub Desktop.
Generate a seeds.rb from existing data
# given a model (SomeModel), generate seeds.rb file from existing data in the database
elements=SomeModel.all.collect do |m|
"#{m.class.to_s}.create(#{m.attributes.select{|k, v| !["id", "created_at", "updated_at"].include?(k)}.collect{ |k, v| ":#{k} => '#{v.to_s.gsub("'", "\\\\'")}'" }.join(', ')})"
end
File.open('seeds.rb', 'w') {|f| elements.each{|element| f.puts(element)} }
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment