Class: Logidze::Generators::ModelGenerator
- Inherits:
-
ActiveRecord::Generators::Base
- Object
- ActiveRecord::Generators::Base
- Logidze::Generators::ModelGenerator
- Defined in:
- lib/generators/logidze/model/model_generator.rb
Overview
:nodoc:
Instance Method Summary collapse
Methods included from FxHelper
Methods included from InjectSql
Instance Method Details
#generate_fx_trigger ⇒ Object
54 55 56 57 58 59 60 |
# File 'lib/generators/logidze/model/model_generator.rb', line 54 def generate_fx_trigger return unless fx? template_name = after_trigger? ? "logidze_after.sql" : "logidze.sql" template template_name, "db/triggers/logidze_on_#{table_name}_v#{next_version.to_s.rjust(2, "0")}.sql" end |
#generate_migration ⇒ Object
46 47 48 49 50 51 52 |
# File 'lib/generators/logidze/model/model_generator.rb', line 46 def generate_migration if [:except] && [:only] warn "Use only one: --only or --except" exit(1) end migration_template "migration.rb.erb", "db/migrate/#{migration_name}.rb" end |
#inject_logidze_to_model ⇒ Object
62 63 64 65 66 67 68 69 70 71 |
# File 'lib/generators/logidze/model/model_generator.rb', line 62 def inject_logidze_to_model return if update? indents = " " * (class_name.scan("::").count + 1) macros_name = detached? ? "has_logidze detached: true\n" : "has_logidze\n" if File.readlines("#{destination_root}/#{model_file_path}").grep(/has_logidze/).empty? inject_into_class(model_file_path, class_name.demodulize, indents + macros_name) end end |