Conditional paperclip presence verification

1.5k Views Asked by At

How can I verify a paperclip attachment does not exist if another field does exist? I tried:

validates_attachment :img, presence: false, if: :some_other_field?
def some_other_field?
  some_other_field
end
3

There are 3 best solutions below

0
On BEST ANSWER

Similar problem here, my solution was to make the comparison in the def

validate :check_image_with_title 

def check_image_with_title
   if !ctitle.blank? and cimage.blank?
      #If ctitle IS NOT empty and cimage IS empty, add a custom error message
      errors.add :key, "You need an image to go with your title"
      return false
    else
      return true
   end 
end
0
On

Try this:-

validates_attachment :img, presence: true, if: :some_other_field?
def some_other_field?
  some_other_field.present?
end
1
On

Have you tried to use exists? instead present?, could be works

validates_attachment :img, presence: false, if: :some_other_field?
def some_other_field?
  some_other_field.exists?
end