这里对Rails有点新意,非常感谢所有的帮助!
我有一个表单,我让用户输入2个日期字段。我想计算这两个日期之间的天数。我该怎么做呢?我是否在控制器中创建一个新方法来计算它?
此外,在我计算这个数字后,我想要显示一个新表格x次(x =计算的天数)。关于如何做到这一点的任何方向都会很棒!提前谢谢!
答案 0 :(得分:4)
您的表单很可能会发布以将数据保存在表示模型实例的数据库行中。因此,您可以使用模型方法(或者,因为有些人会认为模型应该只包含持久性逻辑,模型装饰器)来实现这一点。目前,最简单的方法是将其保留在模型中。
假设您的型号名称为Event。
然后,您可以在其上添加start_date
和end_date
字段。这些可能是datetime
字段。
然后,您可以在模型中使用名为days_spread
:
def days_spread
end_date.to_date - start_date.to_date
end
在这些日期时间上调用to_date
将使该减法的结果产生若干天。您可能还需要在该返回值上调用to_i
以获取整数。
然后你可以拨打days_spread.times do { |x| }
如果没有您的数据模型,很难给出更具体的答案,但这应该可以帮助您入门。