Class: Coalla::Cms::Image::MountGenerator

Inherits:
ActiveRecord::Generators::Base
  • Object
show all
Defined in:
lib/generators/coalla/cms/image/mount_generator.rb

Instance Method Summary collapse

Instance Method Details

#copy_filesObject



34
35
36
37
# File 'lib/generators/coalla/cms/image/mount_generator.rb', line 34

def copy_files
  migration_template "mount/migration.rb.erb", "db/migrate/add_#{@image_field}_field_to_#{@class_name.constantize.table_name}.rb"
  template "mount/uploader.rb.erb", "app/uploaders/#{@class_name.underscore}_#{@image_field}_uploader.rb"
end

#mount_uploaderObject



39
40
41
42
43
# File 'lib/generators/coalla/cms/image/mount_generator.rb', line 39

def mount_uploader
  inject_into_class "app/models/#{@class_name.underscore}.rb", @class_name.constantize do
    "  mount_uploader :#{@image_field}, #{@class_name}#{@image_field.camelize}Uploader#{@prefixed? ", prefixed: true" : ""}\n"
  end
end

#setup_fieldsObject



19
20
21
22
23
24
25
26
27
28
29
30
31
32
# File 'lib/generators/coalla/cms/image/mount_generator.rb', line 19

def setup_fields
  @properties = {
      'file_name' => 'text',
      'content_type' => 'text',
      'size' => 'integer',
      'description' => 'text',

      'width' => 'integer',
      'height' => 'integer',

      'watermarked' => 'boolean',
      'source' => 'text'
  }
end

#setup_namesObject



13
14
15
16
17
# File 'lib/generators/coalla/cms/image/mount_generator.rb', line 13

def setup_names
  @class_name = name
  @image_field = field
  @prefixed = options.prefixed?
end