###環境
ruby 2.3.1p112 (2016-04-26 revision 54768) [x86_64-darwin17]
Rails 4.2.6
###問題のコードと出力
ruby
1Product.find_by(id: @product.id).created_at
出力: Mon, 10 Jun 2019 15:39:15 JST +09:00
ruby
1from = Time.current.beginning_of_day.in_time_zone() 2to = Time.now.end_of_day.in_time_zone 3 4Product.find_by(id: @product.id, created_at: from..to)
出力:
Product Load (0.8ms) SELECT products
.* FROM products
WHERE products
.id
= 1 AND AND products
.created_at
= '--- !ruby/range\nbegin: 2019-06-09 15:00:00.000000000 Z\nend: 2019-06-10 14:59:59.999999999 Z\nexcl: false\n' LIMIT 1
nil
ruby
1Product.find_by(id: @product.id, created_at: from + 9.hour..to + 9.hour)
出力:
Product Load (0.8ms) SELECT products
.* FROM products
WHERE products
.id
= 1 AND AND products
.created_at
= '--- !ruby/range\nbegin: 2019-06-10 00:00:00.000000000 Z\nend: 2019-06-10 23:59:59.999999999 Z\nexcl: false\n' LIMIT 1
nil
###知りたいこと
なぜ時間の範囲内であるはずのレコードを取得できないのかが知りたいです。
またrangeオブジェクトをJSTで取得する方法を知りたいです。
他にも、今日一日のレコードを取得する方法があれば教えて頂きたいです。
なにかご教示いただけることがあれば、なにとぞよろしくお願いいたします。
回答2件
あなたの回答
tips
プレビュー