检查控制器导轨中的日期

时间:2012-05-10 18:05:17

标签: ruby-on-rails ruby-on-rails-3

我在控制器中有一个接收如下参数的方法:

def example
   .... 
   params[:Date]
end

我只是想验证日期是不是昨天或更早。

此日期未输入数据库,因此需要在控制器中进行验证,而不是在模型中进行验证。

2 个答案:

答案 0 :(得分:1)

你在找这样的东西吗?

def example
  unless Date.strptime(params[:date], '%d/%m/%Y').before? Date.today.beginning_of_day
    #did not happen yesterday or before
  end
end

答案 1 :(得分:0)

就我而言,我有一个params [:at]看起来像这样:

params[:at]
=> "05-10-2012"

我解析这个:

date = Date.strptime(params[:at], "%m-%d-%Y")

如果我想检查是不是昨天或更早,我会去:

date > Date.today.beginning_of_day

但这是Rails语法,因为他们已经为基类添加了辅助方法。

你有什么参考[:日期]看起来像?这是Rails还是纯Ruby?