gpt4 book ai didi

ruby-on-rails - 比较 ruby​​ on rails 中的两个日期给出错误 - "can' t 将日期转换为字符串”

转载 作者:行者123 更新时间:2023-11-29 13:59:04 26 4
gpt4 key购买 nike

我在 ruby​​ on rails 中比较两个日期时遇到错误,我使用 PostgreSQL 作为我的数据库。

exp_date = ps.expiry_date
if Date.today < Date.parse(exp_date)
Good
else
Expired

exp_date 变量包含来自数据库的 2014-07-31 值。

但是当我运行这段代码时,它在我的代码片段的第 2 行给出了这个错误“can't convert Date into String”。但是当直接使用日期作为 2014-07-31 时,它是有效的。请帮我找出我错在哪里。

最佳答案

出现错误的唯一可能原因是 Date::parse 将获取一个 Date 对象作为参数。如下所示:-

Date.parse(Date.today)
# TypeError: no implicit conversion of Date into String

我很确定,ps.expiry_date 给你的是 Date 对象,而不是 String。由于您的数据库已经将数据作为 Date 对象提供给您,因此您不需要将其进一步解析为 Date。简单地写成:

Date.today < exp_date

关于ruby-on-rails - 比较 ruby​​ on rails 中的两个日期给出错误 - "can' t 将日期转换为字符串”,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24837606/

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