我有一个“作业”模块(以及数据库中的相应表),该模块有一个名为cheduled_run(日期时间)的字段和一个名为user_id的字段:
- 我怎样才能获得属于某个用户并安排在今天的所有工作?
- 我怎样才能获得属于某个用户并安排在上周的所有工作?
要获取属于某个用户并安排在今天的所有作业,您需要搜索今天时间段内的所有 Scheduled_runs:
user = User.find(1) # Will get the user with ID 1
jobs = Job.where("user_id = :id AND scheduled_run >= :start AND scheduled_run < :end",
:id => user.id,
:start => Date.today,
:end => 1.day.from_now.to_date)
要获取上周的所有作业,我们将执行类似的命令,但我们将切换:start
and :end
作为一周的开始和结束:
user = User.find(1) # Will get the user with ID 1
jobs = Job.where("user_id = :id AND scheduled_run >= :start AND scheduled_run < :end",
:id => user.id,
:start => 1.week.ago.to_date,
:end => Date.today)
在上述两个命令中,to_date
会引发ActiveRecord
来处理由此产生的DateTime
作为一天的开始。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)