models: fix deprecated errors[:base] << "message" calls.
Replace the idiom `errors[:base] << "message"` with `errors.add(:base, "message")`. The former is deprecated in Rails 6.1.
This commit is contained in:
@@ -12,13 +12,13 @@ class Upload < ApplicationRecord
|
||||
|
||||
def validate_file_ext(record)
|
||||
if record.file_ext == "bin"
|
||||
record.errors[:file_ext] << "is invalid (only JPEG, PNG, GIF, SWF, MP4, and WebM files are allowed"
|
||||
record.errors.add(:file_ext, "is invalid (only JPEG, PNG, GIF, SWF, MP4, and WebM files are allowed")
|
||||
end
|
||||
end
|
||||
|
||||
def validate_integrity(record)
|
||||
if record.media_file.is_corrupt?
|
||||
record.errors[:file] << "is corrupted"
|
||||
record.errors.add(:file, "is corrupted")
|
||||
end
|
||||
end
|
||||
|
||||
@@ -37,24 +37,24 @@ class Upload < ApplicationRecord
|
||||
return
|
||||
end
|
||||
|
||||
record.errors[:md5] << "duplicate: #{md5_post.id}"
|
||||
record.errors.add(:md5, "duplicate: #{md5_post.id}")
|
||||
end
|
||||
|
||||
def validate_resolution(record)
|
||||
resolution = record.image_width.to_i * record.image_height.to_i
|
||||
|
||||
if resolution > Danbooru.config.max_image_resolution
|
||||
record.errors[:base] << "image resolution is too large (resolution: #{(resolution / 1_000_000.0).round(1)} megapixels (#{record.image_width}x#{record.image_height}); max: #{Danbooru.config.max_image_resolution / 1_000_000} megapixels)"
|
||||
record.errors.add(:base, "image resolution is too large (resolution: #{(resolution / 1_000_000.0).round(1)} megapixels (#{record.image_width}x#{record.image_height}); max: #{Danbooru.config.max_image_resolution / 1_000_000} megapixels)")
|
||||
elsif record.image_width > Danbooru.config.max_image_width
|
||||
record.errors[:image_width] << "is too large (width: #{record.image_width}; max width: #{Danbooru.config.max_image_width})"
|
||||
record.errors.add(:image_width, "is too large (width: #{record.image_width}; max width: #{Danbooru.config.max_image_width})")
|
||||
elsif record.image_height > Danbooru.config.max_image_height
|
||||
record.errors[:image_height] << "is too large (height: #{record.image_height}; max height: #{Danbooru.config.max_image_height})"
|
||||
record.errors.add(:image_height, "is too large (height: #{record.image_height}; max height: #{Danbooru.config.max_image_height})")
|
||||
end
|
||||
end
|
||||
|
||||
def validate_video_duration(record)
|
||||
if !record.uploader.is_admin? && record.media_file.is_video? && record.media_file.duration > 120
|
||||
record.errors[:base] << "video must not be longer than 2 minutes"
|
||||
record.errors.add(:base, "video must not be longer than 2 minutes")
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user