You need to add the :if argument like this:
validates_format_of :image, :with=>/^.*(.jpg|.JPG|.gif|.GIF|.png|.PNG) $/, :if => Proc.new { |obj| !obj.image.blank? }
You can also specify a method if you prefer:
validates_format_of :image, :with=>/^.*(.jpg|.JPG|.gif|.GIF|.png|.PNG) $/, :if => image_not_blank
private def image_not_blank !image.blank? end
Aaron