class Dis::Generators::ModelGenerator

Public Class Methods

new(args, *options) click to toggle source
Calls superclass method
# File lib/rails/generators/dis/model/model_generator.rb, line 11
def initialize(args, *options)
  super(inject_dis_attributes(args), *options)
end

Public Instance Methods

add_model_extension() click to toggle source
# File lib/rails/generators/dis/model/model_generator.rb, line 15
def add_model_extension
  inject_into_file(
    File.join("app/models", class_path, "#{file_name}.rb"),
    after: "ActiveRecord::Base\n"
  ) do
    "  include Dis::Model\n"
  end
end

Private Instance Methods

dis_attributes() click to toggle source
# File lib/rails/generators/dis/model/model_generator.rb, line 34
def dis_attributes
  %w[
    content_hash:string
    content_type:string
    content_length:integer
    filename:string
  ]
end
inject_dis_attributes(args) click to toggle source
# File lib/rails/generators/dis/model/model_generator.rb, line 26
def inject_dis_attributes(args)
  if args.any?
    [args[0]] + dis_attributes + args[1..args.length]
  else
    args
  end
end