我有下面的代码来获取日期<%= form.date_select :date %>
并比较是否存在具有相同日期的任何帖子。
# Get the date from form and format it to compare with db
# date(1i)"=>"2021", "date(2i)"=>"3", "date(3i)"=>"22"
@selected_date = Date.new(params["post"]["date(1i)"].to_i,
params["post"]["date(2i)"].to_i,
params["post"]["date(3i)"].to_i)
# Check if the post exists in the db
@existing_post = Post.where(user_id: current_user.id, date: @selected_date).first
这很好用。现在我需要对来自 email 的日期做同样的事情。
@selected_date = mail.date.to_s
但是这个邮件日期的格式不同,与数据库中的日期比较总是失败。我不能使用["date(1i)"]
with mail.date
。
如何格式化此 email.date 以便我可以将它的存在与数据库中的日期字段进行比较?
谢谢
更新: 我猜来自电子邮件的日期格式如下。查看服务器上的日志
日期:2021 年 3 月 24 日,星期三 09:57:57 +0000
我在数据库中的日期格式如下。在 Rails c 中输出 Post.last