Rails 3.2アプリでは、due_dateと等しい今日のすべてのイベント項目を返すようにクエリが定義されています。明日の日付を定義するRailsの方法は何ですか?
@due_today = Event.where(:due_date => Time.now.beginning_of_day..Time.now.end_of_day)
これを修正して、今日と明日の予定をすべて返すようにしたいと考えています。
これを行うにはどのような方法が最適ですか?
私は私に利用できるいくつかのオプションがあります知っている:
Date.tomorrow
Date.current.tomorrow
Date.now.tomorrow
DateTime.now.tomorrow.to_date
Time.now.tomorrow.to_date
Date.current+1
私は他の人があることを確認しています。これらはすべて交換可能ですか?パフォーマンスに違いはありますか?異なるアプローチに関連する問題はありますか?私はどんな提案が最高の方法を歓迎するでしょう。
その他の名誉について:私は、due_dateをToday HH:MMまたはTomorrow HH:MMとして表示したいと思います.HH:MMは時刻です。今日や明日のように日付を表示するためにRailsに焼いたメソッドがありますか?または自分のスコープを定義する必要がありますか?
多くの感謝!これらのベンチマーク
をインクリメントしたい場合は、私はあまりパフォーマンスを心配しないでしょう。タイトなループで何千回も日付を計算しないので、パフォーマンスの差はごくわずかです。最も読みやすいものと一緒に行きなさい。 'now'はタイムゾーンを考慮に入れますが、' now'は考慮しません。 – Dennis