如果当前时间是格林威治标准时间周一至周五上午9点至下午5点之间,我希望在我的视图中显示一个div,显示一段文字。但是如果它在那个时间之外就是一个按钮。
我怎样才能做到这一点?
答案 0 :(得分:1)
您有时间和日期的帮助,如Time.now
获取当前时间,Time.now.wday
返回与工作日相对应的整数。只需在您的视图中与您的规则进行比较,就可以了。
答案 1 :(得分:0)
在您的控制器中,您可以检查@open = (1..4).include?(Time.now.wday) && (9..17).include?(Time.now.hour)
之类的内容
你是真的,或者是假的。现在,您可以使用@open
来显示按钮(false)或文本(true)
答案 2 :(得分:0)
这样的事情应该有效
# Time.now.utc may work
now = Time.now.in_time_zone('GMT') as well
if time.wday.in?(1..5) && time.hour.in?(9..16)
# show text
else
# show button
确保为您正确使用的模板引擎(ERB或HAML)修改此代码。