class Voynich::ModelAttributeGenerator

Public Instance Methods

add_voynich_attribute() click to toggle source
# File lib/generators/voynich/model_attribute_generator.rb, line 16
    def add_voynich_attribute
      inject_into_file(model_file_path, after: "include Voynich::ActiveModel::Model\n",) do <<-RUBY
  voynich_attribute :#{attribute_name}
RUBY
      end
    end
generate_migration() click to toggle source
# File lib/generators/voynich/model_attribute_generator.rb, line 23
def generate_migration
  generate "migration", "AddVoynich#{attribute_name.classify}ValueIdTo#{model_class_name.pluralize} voynich_#{attribute_name}_value_id:integer"
end
include_module() click to toggle source
# File lib/generators/voynich/model_attribute_generator.rb, line 9
    def include_module
      inject_into_file(model_file_path, after: %r{class\s+#{model_class_name}\s+<\s+ActiveRecord::Base\n}) do <<-'RUBY'
  include Voynich::ActiveModel::Model
RUBY
      end
    end

Private Instance Methods

model_file_path() click to toggle source
# File lib/generators/voynich/model_attribute_generator.rb, line 29
def model_file_path
  File.join("app", "models", "#{model_class_name.underscore}.rb")
end