【发布时间】:2014-01-05 12:23:23
【问题描述】:
在我的 Rails 应用程序(Rails 2.3.14 和 Ruby 1.8.7)中,我试图将日期时间字符串转换为不同的格式以在我的 MySQL 数据库上执行搜索,但我收到了 invalid date 错误,我可以'似乎不明白为什么,我已经阅读了很多类似的问题,但我似乎仍然无法解决这个问题。
# check if filter contains a time stamp
if params[:sSearch].include?('/') and params[:sSearch].include?(':')
datetime = DateTime.strptime(params[:sSearch], "%Y-%m-%d %H:%M")
params[:sSearch] = datetime
end
示例场景
04/11/13 16:14
应该转换为
2013-11-04 16:14
我认为这可能与秒不包含在字符串的前端表示中这一事实有关,因为数据库表中的精确 datetime 是 2013-11-04 16:14:52 所以我现在包含了秒但仍然出现相同的错误,我认为这并不重要,因为我在搜索词的任一侧使用带有通配符的 LIKE 操作数,所以即使没有秒数,它也应该可以工作。
【问题讨论】:
标签: ruby-on-rails ruby datetime ruby-on-rails-2 strptime