私は2つのモデルユーザー、企業を持っています
ユーザーモデル:
has_attached_file :avatar,
...
:whiny=>false
validates_with ImageSizeValidator
validates_with ImageTypeValidator
validates_with ImageConvertionValidator
会社のモデル:
has_attached_file :logo,
#the rest is similar
ユーザーの検証を行い、validation_helper に入れました
class ImageSizeValidator < ActiveModel::Validator
def validate(record)
if record.avatar_file_name.present?
record.errors[:base] << (I18n.t :in_between, scope: "activerecord.errors.models.user.attributes.avatar_file_size") unless record.avatar_file_size.to_i < 200000
end
end
end
class ImageTypeValidator < ActiveModel::Validator
def validate(record)
if record.avatar_file_name.present?
record.errors[:base] << (I18n.t :file_type, scope: "activerecord.errors.models.user.attributes") unless ['image/jpeg', 'image/gif','image/png'].include?(record.avatar_content_type)
end
end
end
私の問題は、名前が異なるため、ユーザーの avatar_file_name と会社のロゴです。
それぞれに特定の方法を実行する必要がありますか? どうすればこれを回避できますか?