期限が過ぎたレコードを取得

期限が過ぎてしまったレコードを取得したいと思い、whereメソッドで実装しようとしました。

しかし、「引数はどう書けばいいんだっけ。。。」と手間取ってしまったので、そのメモです!

 

やりたかったこと

deadlineというDate型のカラムから、今日の日付より昔のデータを取得しようとしました。

 

どうやったか

以下のようにwhereの引数を指定してあげることで無事取得できました!!

where("deadline < ?", Date.current)

irb(main):004:0> Task.where("deadline < ?", Date.current)
Task Load (2.7ms) SELECT "tasks".* FROM "tasks" WHERE (deadline < '2019-02-19') LIMIT $1 [["LIMIT", 11]]
=> #<ActiveRecord::Relation [#<Task id: 12, title: "datatime", description: "datatimeを試す", created_at: "2019-02-06 05:37:44", updated_at: "2019-02-08 13:43:29", deadline: "2019-02-06", status: "着手中", priority: "緊急度0", user_id: 1>, #<Task id: 13, title: "status", description: "statusを変更できるようにした", created_at: "2019-02-07 03:24:53", updated_at: "2019-02-08 13:43:29", deadline: "2019-02-15", status: "未着手", priority: "緊急度0", user_id: 1>, #<Task id: 14, title: "緊急度", description: "緊急度を登録できるようにする", created_at: "2019-02-08 07:46:35", updated_at: "2019-02-10 07:57:29", deadline: "2019-02-09", status: "未着手", priority: "緊急度0", user_id: 1>, #<Task id: 16, title: "ラベル", description: "ラベル", created_at: "2019-02-13 03:31:05", updated_at: "2019-02-13 06:44:48", deadline: "2019-02-13", status: "未着手", priority: "緊急度0", user_id: 1>, #<Task id: 17, title: "fdas", description: "fdsa", created_at: "2019-02-13 08:18:36", updated_at: "2019-02-13 08:18:36", deadline: "2019-02-13", status: "未着手", priority: "緊急度0", user_id: 1>, #<Task id: 18, title: "rer", description: "rer", created_at: "2019-02-13 08:20:46", updated_at: "2019-02-13 08:20:46", deadline: "2019-02-13", status: "未着手", priority: "緊急度0", user_id: 1>, #<Task id: 6, title: "redirect", description: "redirect_to task_path, notice: 'TODOを作成しました'", created_at: "2019-02-02 21:52:03", updated_at: "2019-02-14 08:05:30", deadline: "2019-02-18", status: "未着手", priority: "緊急度1", user_id: 1>, #<Task id: 21, title: "ラベルラベル", description: "ラベルラベル", created_at: "2019-02-15 03:28:09", updated_at: "2019-02-15 03:56:17", deadline: "2019-02-16", status: "未着手", priority: "緊急度0", user_id: 1>, #<Task id: 1, title: "indexアクション", description: "indexアクションとそのビューを作成する", created_at: "2019-01-31 23:49:40", updated_at: "2019-02-08 13:43:29", deadline: "2019-02-07", status: "未着手", priority: "緊急度0", user_id: 1>, #<Task id: 5, title: "redirect", description: "redirect_to task_path, notice: 'TODOを作成しました'", created_at: "2019-02-02 21:52:00", updated_at: "2019-02-08 13:43:29", deadline: "2019-02-12", status: "未着手", priority: "緊急度0", user_id: 1>, ...]>