Module: FileColumn
- Included in:
- ActiveRecord::Base
- Defined in:
- lib/file_column.rb,
lib/file_compat.rb,
lib/validations.rb,
lib/magick_file_column.rb
Overview
Defined Under Namespace
Modules: ClassMethods, FileCompat, MagickExtension, Validations
Classes: BaseUploadedFile, NoUploadedFile, PermanentUploadedFile, RealUploadedFile, TempUploadedFile
Class Method Summary
collapse
Class Method Details
.append_features(base) ⇒ Object
6
7
8
9
|
# File 'lib/file_column.rb', line 6
def self.append_features(base)
super
base.extend(ClassMethods)
end
|
.create_state(instance, attr) ⇒ Object
11
12
13
14
15
16
17
18
|
# File 'lib/file_column.rb', line 11
def self.create_state(instance,attr)
filename = instance[attr]
if filename.nil? or filename.empty?
NoUploadedFile.new(instance,attr)
else
PermanentUploadedFile.new(instance,attr)
end
end
|
.init_options(defaults, model, attr) ⇒ Object
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
# File 'lib/file_column.rb', line 20
def self.init_options(defaults, model, attr)
options = defaults.dup
options[:store_dir] ||= File.join(options[:root_path], model, attr)
unless options[:store_dir].is_a?(Symbol)
options[:tmp_base_dir] ||= File.join(options[:store_dir], "tmp")
end
options[:base_url] ||= options[:web_root] + File.join(model, attr)
[:store_dir, :tmp_base_dir].each do |dir_sym|
if options[dir_sym].is_a?(String) and !File.exists?(options[dir_sym])
FileUtils.mkpath(options[dir_sym])
end
end
options
end
|