Class: Watarase::Generators::UploaderGenerator

Inherits:
Base
  • Object
show all
Defined in:
lib/watarase/generators/uploader/uploader_generator.rb

Instance Method Summary collapse

Instance Method Details

#create_image_holderObject



4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# File 'lib/watarase/generators/uploader/uploader_generator.rb', line 4

def create_image_holder
  image_handler = file_name.camelcase.constantize
  fk = image_handler.primary_key
  fk_type = ((image_handler.respond_to? :columns) ? image_handler.columns.select{|column| column.name == fk}.first.type : :integer)
  model_name = "#{file_name}_#{Watarase.suffix}"

  str_code = "\n  acts_as_image_holder\n\n  belongs_to :\#{file_name}, primary_key: :\#{fk}, foreign_key: :\#{file_name}_\#{fk}\n\n  CODE\n\n  generate \"model\", \"\#{model_name} \#{file_name}_\#{fk}:\#{fk_type} filename:string content_type:string image_data:binary image_thumb:binary\"\n  inject_into_class \"app/models/\#{model_name}.rb\", model_name.camelcase.constantize do\n    str_code\n  end\nend\n"