1. ホーム
  2. ruby-on-rails

[解決済み】Rails ActiveRecordの日付の間

2022-04-13 10:43:35

質問

1日に付けられたコメントを照会したいのですが。フィールドは標準的なタイムスタンプの一部であり、次のとおりです。 created_at . 選択された日付は date_select .

を使用するにはどうすればよいですか? ActiveRecord を行うことができますか?

のようなものが必要なんです。

"SELECT * FROM comments WHERE created_at BETWEEN '2010-02-03 00:00:00' AND '2010-02-03 23:59:59'"

解決方法は?

現在受け入れられている回答は、Rails 3では非推奨であることに注意してください。代わりにこれを実行する必要があります。

Comment.where(:created_at => @selected_date.beginning_of_day..@selected_date.end_of_day)

または、使用したい、もしくは使用せざるを得ない場合は 純粋な文字列条件 を、行うことができます。

Comment.where('created_at BETWEEN ? AND ?', @selected_date.beginning_of_day, @selected_date.end_of_day)