Class: Recognition::Generators::VoucherGenerator

Inherits:
Rails::Generators::Base
  • Object
show all
Defined in:
lib/generators/recognition/voucher_generator.rb

Instance Method Summary collapse

Instance Method Details

#add_stanzaObject



17
18
19
20
21
22
# File 'lib/generators/recognition/voucher_generator.rb', line 17

def add_stanza
  line = "class Voucher < ActiveRecord::Base"
  gsub_file 'app/models/voucher.rb', /(#{Regexp.escape(line)})/mi do |match|
    "#{match}\n  acts_as_voucher code_length: 20 \n"
  end
end

#scaffoldObject



6
7
8
# File 'lib/generators/recognition/voucher_generator.rb', line 6

def scaffold
  generate 'scaffold voucher code amount:integer reusable:boolean expires_at:datetime'
end

#set_defaultsObject



10
11
12
13
14
15
# File 'lib/generators/recognition/voucher_generator.rb', line 10

def set_defaults
  line = "t.boolean :reusable"
  gsub_file Dir.glob("db/migrate/*_create_vouchers.rb").first, /(#{Regexp.escape(line)})/mi do |match|
    "#{match}, default: false"
  end
end