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



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

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



4
5
6
# File 'lib/generators/recognition/voucher_generator.rb', line 4

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

#set_defaultsObject



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

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