diff options
author | Trung Duc Tran <trung@tdtran.org> | 2016-07-03 21:27:37 +0200 |
---|---|---|
committer | Trung Duc Tran <trung@tdtran.org> | 2016-09-23 11:38:38 -0700 |
commit | 21675fdc441e5d67dd6bc007979523db164a5b2d (patch) | |
tree | 8ea4c551d3bfa5252db0ab2081d813727cf08719 /activerecord/lib | |
parent | 0bc196518a7369d1279a11faad8aef2442539c82 (diff) | |
download | rails-21675fdc441e5d67dd6bc007979523db164a5b2d.tar.gz rails-21675fdc441e5d67dd6bc007979523db164a5b2d.tar.bz2 rails-21675fdc441e5d67dd6bc007979523db164a5b2d.zip |
Serialize JSON attribute value nil as SQL NULL, not JSON 'null'
Test: JSON attribute value nil can be used in where(attr: nil)
Add changelog entry
Diffstat (limited to 'activerecord/lib')
-rw-r--r-- | activerecord/lib/active_record/type/internal/abstract_json.rb | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/activerecord/lib/active_record/type/internal/abstract_json.rb b/activerecord/lib/active_record/type/internal/abstract_json.rb index 513c938088..e19c5a14da 100644 --- a/activerecord/lib/active_record/type/internal/abstract_json.rb +++ b/activerecord/lib/active_record/type/internal/abstract_json.rb @@ -17,7 +17,11 @@ module ActiveRecord end def serialize(value) - ::ActiveSupport::JSON.encode(value) + if value.nil? + nil + else + ::ActiveSupport::JSON.encode(value) + end end def accessor |