class Textacular::MigrationGenerator
Public Class Methods
new(filename, content)
click to toggle source
# File lib/textacular/migration_generator.rb, line 4 def initialize(filename, content) @filename = filename @content = content @output_stream = nil end
Public Instance Methods
generate_migration()
click to toggle source
# File lib/textacular/migration_generator.rb, line 10 def generate_migration stream_output do |io| io.puts(@content) end end
stream_output(now = Time.now.utc) { |output_stream| ... }
click to toggle source
# File lib/textacular/migration_generator.rb, line 16 def stream_output(now = Time.now.utc, &block) if !@output_stream && defined?(Rails) FileUtils.mkdir_p(File.dirname(migration_file_name(now))) File.open(migration_file_name(now), 'w', &block) else @output_stream ||= $stdout yield @output_stream end end
Private Instance Methods
migration_file_name(now = Time.now.utc)
click to toggle source
# File lib/textacular/migration_generator.rb, line 29 def migration_file_name(now = Time.now.utc) File.join(Rails.root, 'db', 'migrate',"#{now.strftime('%Y%m%d%H%M%S')}_#{@filename}.rb") end