gpt4 book ai didi

ruby-on-rails - 是什么导致此无效日期错误?

转载 作者:数据小太阳 更新时间:2023-10-29 07:22:46 26 4
gpt4 key购买 nike

在这行代码中:

@note.date = Date.strptime(params[:custom_date], '%d-%m-%Y') unless params[:custom_date].blank?

我收到这个错误:

ArgumentError: invalid date
/usr/ruby1.9.2/lib/ruby/1.9.1/date.rb:1022

参数如下:

{
"commit" => "Create",
"utf8" => "\342\234\223",
"authenticity_token" => "RKYZNmRaElg/hT5tlmLcqnstnOapdhiaWmDcjNDtSOI=",
"action" => "create",
"note" => { "name"=>"note1", "detail"=>"detail" },
"controller" => "notes",
"custom_date" => "03-03-2010"
}

是什么导致了这个错误?感谢阅读。

最佳答案

你得到的参数是

{"commit"=>"Create",
"utf8"=>"\342\234\223",
"authenticity_token"=>"RKYZNmRaElg/hT5tlmLcqnstnOapdhiaWmDcjNDtSOI=",
"action"=>"create",
"note"=>
{"name"=>"note1",
"detail"=>"detail"},
"controller"=>"notes",
"custom_date"=>"03-03-2010"}

因此我们可以清楚地看出

它不是 params[:custom_date] 但它是 params['custom_date']

更新

Date.strptime 方法遵循特定的模式。例如

str = "01-12-2010" #DD-MM-YYYY
then use
Date.strptime(str,"%d-%m-%Y")

但是如果

str = "2010-12-01" #YYYY-MM-DD
then use
Date.strptime(str,"%Y-%m-%d")

关于ruby-on-rails - 是什么导致此无效日期错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4301464/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com