Ruby on Rails - 根据参数

时间:2016-09-12 11:23:13

标签: ruby-on-rails ruby date

我已将activity_logs添加到我的应用中,并根据向网址提供@activities来显示param_date

我的链接/路径如下:

http://localhost:3000/users/activity_logs?param_date=2016-09-12

我非常喜欢添加第二天& 前一天在同一页面上。我怎样才能找到第二天& 前一天基于param_date上的日期。

例如:= link_to 'Next day', activity_logs_path(param_date: date)

所以基本上如果param_date 2016-09-30 ,则第二天将是: 2016-10-01 和上一天: 2016 -09-29

2 个答案:

答案 0 :(得分:1)

试试这个:

prev_data = (Date.parse(params[:param_date]) -1).strftime('%F')
next_data = (Date.parse(params[:param_date]) +1).strftime('%F')

答案 1 :(得分:1)

Ruby的日期类有next_dayprev_day方法:

只需解析控制器中params的日期

@date = Date.parse(params[:param_date])

并在您的观看中构建这样的链接

link_to('Next day', activity_logs_path(param_date: @date.next_day))

link_to('Previous day', activity_logs_path(param_date: @date.prev_day))