3
4
5
6
7
8
9
10
11
12
13
14
15
|
# File 'lib/ar_s3_columns/instance_methods.rb', line 3
def s3_column_upload_on_create
self.class.s3_columns.each do |column_name|
column_value = self.read_attribute(column_name.to_sym)
next if column_value.blank?
marshalled_data = Marshal.dump(column_value)
key_path = self.class.s3_columns_keys[column_name.to_sym].call(self)
bucket_name = self.class.s3_columns_buckets[column_name.to_sym]
write_options = S3Columns.default_s3_write_options || {}
S3Columns.s3_connection.buckets[bucket_name].objects[key_path].write(marshalled_data, write_options)
write_attribute(column_name.to_sym, key_path)
end
end
|