* Check if image value is nil? before creating an image
Check if uploaded images aren't nil before creating SiteUpload models
for them.
* Validate presence of file in SiteUpload
* Fix file presence validation
* Fabricate SiteUpload#file
* Add link to Creative Commons license
KEYS.each do |key|
value = instance_variable_get("@#{key}")
- if UPLOAD_KEYS.include?(key)
+ if UPLOAD_KEYS.include?(key) && !value.nil?
upload = SiteUpload.where(var: key).first_or_initialize(var: key)
upload.update(file: value)
else
has_attached_file :file
validates_attachment_content_type :file, content_type: /\Aimage\/.*\z/
+ validates :file, presence: true
validates :var, presence: true, uniqueness: true
before_save :set_meta
--- /dev/null
+This "Utah teapot" photograph is licensed under the Creative Commons
+Attribution-Share Alike 3.0 Unported license:
+ https://creativecommons.org/licenses/by-sa/3.0/deed.en
+
+Original source of work:
+ https://commons.wikimedia.org/wiki/File:Utah_teapot_simple_2.png
Fabricator(:site_upload) do
+ file { File.open(File.join(Rails.root, 'spec', 'fabricators', 'assets', 'utah_teapot.png')) }
end