seed-fu-mongoid/lib/seed-fu-mongoid.rb

43 lines
918 B
Ruby
Raw Normal View History

2013-02-20 18:09:29 +00:00
require "seed-fu-mongoid/version"
require "seed-fu-mongoid/document_seeder"
require "seed-fu-mongoid/seed_proxy"
require 'mongoid/document'
if defined?(Rails::Railtie)
require 'seed-fu-mongoid/railtie'
end
# punch the duck out of Mongoid::Document
2013-02-24 21:39:36 +00:00
module SeedFuMongoid
class << self
attr_accessor :quiet
2013-02-24 21:39:36 +00:00
def seed
files = Dir['db/fixtures/*.rb'].sort
files += Dir["db/fixtures/#{Rails.env}/*.rb"].sort
files.each do |file|
puts "== Seed from #{file}" unless quiet
2013-02-24 21:39:36 +00:00
load file
end
end
end
end
2013-02-20 18:09:29 +00:00
module Mongoid::Document
module ClassMethods
def seed_once(*constraints)
seeder = SeedFuMongoid::DocumentSeeder.new(self, constraints, block)
if seeder.new?
seeder.seed!
end
end
def seed(*constraints_and_objects, &block)
SeedFuMongoid::DocumentSeeder.new(self, constraints_and_objects, block).seed!
2013-02-20 18:09:29 +00:00
end
end
end