This repository is private.
All pages are served over SSL and all pushing and pulling is done over SSH.
No one may fork, clone, or view it unless they are added as a member.
Every repository with this icon (
) is private.
Every repository with this icon (
This repository is public.
Anyone may fork, clone, or view it.
Every repository with this icon (
) is public.
Every repository with this icon (
commit 7c075e3137bfabff5f2a0eaf24fbf960528792b4
tree f259819f9ddba84f91881564e6cabbb1ce2b5345
parent 6eb343fc1d9dbbaa2d9090c4d3844ade58de57d5
tree f259819f9ddba84f91881564e6cabbb1ce2b5345
parent 6eb343fc1d9dbbaa2d9090c4d3844ade58de57d5
| name | age | message | |
|---|---|---|---|
| |
.gitignore | Tue Dec 23 04:23:28 -0800 2008 | |
| |
README.markdown | Sun Nov 22 07:02:43 -0800 2009 | |
| |
Rakefile | Thu Nov 26 20:18:05 -0800 2009 | |
| |
VERSION | Thu Nov 12 22:35:05 -0800 2009 | |
| |
clear_empty_attributes.gemspec | Thu Nov 12 22:46:16 -0800 2009 | |
| |
init.rb | Mon Feb 05 06:55:52 -0800 2007 | |
| |
lib/ | Thu Nov 12 22:45:50 -0800 2009 | |
| |
spec/ | Thu Nov 26 20:18:05 -0800 2009 | |
| |
tasks/ | Thu Jan 15 22:15:35 -0800 2009 |
README.markdown
Problem
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 onlyif field) - Can lead to late-detected bugs because most of the time strings were
filled or ''and suddenly they arenil - Some validations do not support
:allow_blank=>true - Databases can handle
NULLbetter & faster than empty strings (especially when usingLIKE)
Solution
Defines an AR before_validation that sets empty Strings to nil.
Install
script/plugin install git://github.com/collectiveidea/clear_empty_attributes.git
OR
sudo gem install clear_empty_attributes
Migration
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)
Authors
Hereby placed under public domain, do what you want, just do not hold anybody accountable...








