首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Rails截止日期计算器帮助:未来日期=用户输入的数字+用户选择的日期

Rails截止日期计算器帮助:未来日期=用户输入的数字+用户选择的日期
EN

Stack Overflow用户
提问于 2014-02-06 05:34:44
回答 1查看 542关注 0票数 0

我是Rails的新手,我正试图构建一个截止日计算器,它的工作方式与这个完全一样:(单击此处)。

正如您从超链接示例中看到的那样,我的截止日期计算器将允许用户在表单字段中输入一个给定的数字,以反映其截止日期之前的天数。然后,我的截止日期计算器将将该数字添加到用户选定的给定日期。然后,计算器将根据这两个用户的输入打印最后期限的结果日期。

例如:假设一个用户收到一封信,上面写着:“从2/5/14开始你有45天的时间来发送对这封信的回复.”用户将输入" 45“(天)和" 2/5/14”(开始日期),然后单击“计算”按钮。然后,网站会显示这样的内容:“你的截止日期是2014年3月22日星期六。”到目前为止.

我的app/view/pages/about_page.html.erb文件包含以下代码块:

代码语言:javascript
复制
<div class="row">
    <div class="col-xs-2">

      <%= form_tag do %> 
        <%= number_field_tag 'Days' %>
        <p>AFTER</p>
        <%= date_select('Start', 'start_date') %>
        <%= submit_tag 'Calculate' %>
      <% end %>

      <div>
        <%= @deadline %>
      </div>

    </div>
  </div> 

我的应用程序/资产/控制器/pages_控制员. of文件包含以下代码块:

代码语言:javascript
复制
class PagesController < ApplicationController

* * * * 

def about_page
    @days = params[:Days]
    @start = params[:Start]
    @deadline = 'Print the date that is X days after the start date selected by the user.'
end

* * * * 

private
    def page_params
        params.require(:page).permit(:name, :position, :visible)
    end

所以,我的问题是,如何让Rails将用户的":Days“输入添加到用户的”开始“日期输入中,然后打印出最终的”截止日期“?我一直在寻找解决方案,但还没有找到任何能清楚解释如何计算用户输入开始日期和开始日期后天数的未来日期的方法。请帮帮我!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-02-06 06:08:16

您只需使用+运算符将天数添加到日期,如

代码语言:javascript
复制
Date.today + 10 => Sun, 16 Feb 2014

在您的例子中,这将转换为

代码语言:javascript
复制
@deadline = Date.new(params[:Start][:year].to_i, params[:Start][:month].to_i, params[:Start][:day].to_i) + params[:Days].to_i
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21594848

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档