我有一个名为" Tenant"它有两个日期属性tenant_from
和tenant_until
。
我想写一个方法来检查Date.today
是否在我上面提到的两个日期之间。我想沿着这些方向做点什么:
IF Date.today IS BETWEEN tenant.tenant_from AND tenant.tenant_until DO
...
ELSE
...
答案 0 :(得分:17)
尝试
if Time.zone.today.between?(tenant.tenant_from, tenant.tenant_until)
# YOUR CODE GOES HERE
else
# YOUR CODE GOES HERE
end
答案 1 :(得分:9)
仅为替代解决方案。您可以使用日期范围和cover?
来达到同样的效果。
(tenant.tenant_from .. tenant.tenant_until).cover?(Date.today)
答案 2 :(得分:1)
Class Tenant < ActiveRecord::Base
def current? #name this what you want, but keep the question mark, since it returns a boolean
(tenant.tenant_from.to_date .. tenant.tenant_until.to_date).include?(Date.today)
end
end
现在,您在模型的实例(它所属的位置)上拥有模型逻辑。那么你的逻辑是if @tenant.current?
。