Find file
Fetching contributors…
Cannot retrieve contributors at this time
38 lines (27 sloc) 1.16 KB


When AR objects are saved, empty fields are saved as '' instead of nil.

  • Complicates queries for empty fields (WHERE field IS NULL OR field = '')
  • Makes the use of unless field.blank? necessary (opposed to only if field)
  • Can lead to late-detected bugs because most of the time strings were filled or '' and suddenly they are nil
  • Some validations do not support :allow_blank=>true
  • Databases can handle NULL better & faster than empty strings (especially when using LIKE)


Defines an AR before_validation that sets empty Strings to nil.


script/plugin install git:// OR
sudo gem install clear_empty_attributes


When you are switching to clear_empty_attributes, run this task to remove any '' strings/texts from your database.

rake db:clear_empty_attributes

(only works when checked out or installed as plugin)


Hereby placed under public domain, do what you want, just do not hold anybody accountable...