Rails ActiveRecord查询日期范围
我试图在我的控制器中使用以下行来捕获距离当前日期不到一周的所有任务:
@due_this_week = current_user.tasks.where(due_date: Date.today..1.week.from_now)
出于某种原因,即使我知道我在四天和六天内完成任务,也没有找到任何结果。 这是使用范围查询的唯一实例变量。 我有另一个可以找到过期任务的工作正常:
@overdue = current_user.tasks.where("due_date <= ?", Date.today)
我错过了什么?
应该:
@due_this_week = current_user.tasks.where(due_date: 1.week.ago..Date.today)
事实certificate我的控制器设置不正确并且在创建新分配时不再保存current_user
的ID,这就是为什么没有找到它们的原因。 我使用rails控制台并在提交的最后几个分配中运行查找来解决这个问题。 user_id
设置为nil
。 谢谢你帮助@mu太短了。