2012-03-28 8 views

Antwort

5

@ Brian,

ich das folgende Skript bin mit den Vorrichtungen aus einem gegebenen SQL

Dies ist unter meinem lib/Task-Verzeichnis als Rake Aufgabe zu erzeugen

namespace :fixture_generator do 
    desc "generate fixtures for a given sql query from the current development database" 

    task :fixture_generator, [:sql, :file_name] => :environment do |t, args| 
    args.with_defaults(:sql => nil, :file_name => nil) 
    i = "000" 
    p "creating fixture - #{args.file_name}" 
    File.open("#{Rails.root}/test/fixtures/#{args.file_name}.yml", 'a+') do |file| 
     data = ActiveRecord::Base.connection.select_all(args.sql) 
     file.write data.inject({}) { |hash, record| 
     number = i.succ! 
     hash["#{args.file_name}_#{number}"] = record 
     hash 
     }.to_yaml 
    end 

    end 
end 

Nutzungs , Angenommen, ich möchte Fixture für Benutzer generieren Tabelle

Und auch, wenn Sie Führen Sie eine weitere Abfrage mit der gleichen Halterung Dateinamen, wird es auf dem bestehenden

HTH

+0

Wow anhängen. Das ist wirklich nett - ich wusste nicht einmal, dass du Aufgaben machen kannst! Vielen Dank. –

+0

@Brianw, froh, dass es dir helfen könnte :) – sameera207