我有很多車型需要包括has_attached_file
與相同參數替換哈希參數與一個有對象
我怎麼能存儲在一個哈希對象的參數?
當前使用
class Product < ActiveRecord::Base
has_attached_file :cover,
:storage => :s3,
:s3_region => ENV['AWS_REGION'],
:s3_host_name => ENV['S3_HOST'],
:s3_credentials => "#{Rails.root}/config/s3.yml" ,
:styles => IMAGE_STYLES,
:default_url => "/images/missing.png"
end
預期使用
default_s3_arguments = {:storage => :s3,
:s3_region => ENV['AWS_REGION'],
:s3_host_name => ENV['S3_HOST'],
:s3_credentials => "#{Rails.root}/config/s3.yml" ,
:styles => IMAGE_STYLES,
:default_url => "/images/missing.png"}
class Product < ActiveRecord::Base
has_attached_file :cover, default_s3_arguments
end
我建議從名稱刪除'DEFAULT',因爲嚴格來說,並根據情況怎麼樣我們通常在Ruby中使用這個詞,它不是一個真正的默認,而是一組常用的選項。 (也就是說,讀者看到'DEFAULT'可能會查找所使用的不同數據和默認參數說明,而在較高層次上描述該選項集的名稱會很有幫助,或者,如果不是,則只需簡單地使用S3_ARGUMENTS或FILE_ATTACHED_ARGUMENTS或其他 –
@KeithBennett是的,我完全同意,我只是使用相同的名稱,OP使用。btw,我已經更新了答案!:) – Alfie