1

Rails でアプリの日付を比較しようとしています。私はこのリンクを試しました レールでの日付の比較。しかし、これは私が望むものではありません。日付に応じたフィルターがあるとします。

<% jobs = @user.jobs.where(:curr_date => (Date.today))%>

ここで、curr_date は私が選択した「日付」属性です。

このコードは、今日の日付を持つエントリに対して機能しますが、今日から 1 週間前までの日付を持つすべてのエントリが必要な場合はどうすればよいですか?

ありがとう!:)

4

4 に答える 4

2

簡単に使用できます

jobs = @user.jobs.where(:curr_date => (DateTime.now..1.week.ago))

に更新するDateTime.nowか、使用することもできます。それ以外の場合は、aと aDate.today.to_timeの比較でエラーが発生します。DateTime

于 2012-07-10T11:33:52.013 に答える
1

comparison_date_1 <=> comparison_date_2 は、それに応じて -1,1,0 を返し、それらを入力することができます......

于 2012-07-10T11:43:25.663 に答える
1

私はそのようなものがうまくいくはずだと思います:

<% jobs = @user.jobs.where(['curr_date < ? AND curr_date > ?', Date.today, 1.week.ago])) %>

于 2012-07-10T11:31:30.697 に答える
0

コンソールでこれを試したことはありませんが、うまくいくはずです:

# You need to implement the #week_before method
@user.jobs.where(:curr_date => (Date.week_before..Date.today))

アクティブ レコード クエリ -範囲条件での配列条件チェック (2.2.2)

于 2012-07-10T11:34:35.347 に答える