我目前有一个通过API调用发出请求的应用,并返回数据。我创建了两个日期方法(请求使用这些日期作为参数),因此它总是调用上周的数据:
def self.monday
d = Date.today
seven_days_ago = (d - 7)
seven_days_ago.beginning_of_week
end
def self.sunday
d = Date.today
seven_days_ago = (d - 7)
seven_days_ago.end_of_week
end
我想使用这些星期一和星期日方法作为应用程序的默认值,但如果用户在表单中输入日期,这些方法将被输入的值覆盖。这些输入的值应该在用户浏览站点时保持不变,直到有新的会话,或者清除值(从而将方法恢复为默认值)。
如何创建一个不将日期保存到数据库的表单,只是覆盖上述两种方法中的默认日期?那些日期应该保持活跃状态,直到他们清除那个表格,或者他们开始新的会话?
答案 0 :(得分:0)
def self.monday(options = {})
if options[:date]
return Date.parse(options[:date])
else
d = Date.today
seven_days_ago = (d - 7)
return seven_days_ago.beginning_of_week
end
将使用默认日期
whatever.monday()
将使用特定日期
whatever.monday(:date => '2013-07-01')