diff options
author | edogawaconan <me@myconan.net> | 2014-06-05 18:31:39 +0900 |
---|---|---|
committer | edogawaconan <me@myconan.net> | 2014-06-05 21:47:05 +0900 |
commit | f4bd67b687ba1a2a6f907939ea44717b41a505e1 (patch) | |
tree | e8cb6eb9fdf997d834f9ceda357bd2d7d68dee9e /activerecord/lib/active_record/connection_adapters/postgresql/quoting.rb | |
parent | bb8b2141844872c94141091ffe3b45505fb3b4db (diff) | |
download | rails-f4bd67b687ba1a2a6f907939ea44717b41a505e1.tar.gz rails-f4bd67b687ba1a2a6f907939ea44717b41a505e1.tar.bz2 rails-f4bd67b687ba1a2a6f907939ea44717b41a505e1.zip |
Fix behavior of handling BC era dates.
BC era year is (astronomical year + 1) and starts from 1 BC.
Diffstat (limited to 'activerecord/lib/active_record/connection_adapters/postgresql/quoting.rb')
-rw-r--r-- | activerecord/lib/active_record/connection_adapters/postgresql/quoting.rb | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/activerecord/lib/active_record/connection_adapters/postgresql/quoting.rb b/activerecord/lib/active_record/connection_adapters/postgresql/quoting.rb index 4c719b834f..3cf40e6cd4 100644 --- a/activerecord/lib/active_record/connection_adapters/postgresql/quoting.rb +++ b/activerecord/lib/active_record/connection_adapters/postgresql/quoting.rb @@ -149,8 +149,9 @@ module ActiveRecord result = "#{result}.#{sprintf("%06d", value.usec)}" end - if value.year < 0 - result = result.sub(/^-/, "") + " BC" + if value.year <= 0 + bce_year = format("%04d", -value.year + 1) + result = result.sub(/^-?\d+/, bce_year) + " BC" end result end |