问题:前端输入的日期格式为:yyyy-mm-dd,yyyy-m-d。时间格式为:hh:mm:ss,h:m:s,h,hh。总之,输入的格式不一定固定。
解决办法:写一个日期时间字符串处理函数,将不规范的字符串格式统一为一种格式供go反序列化为time。
方法如下:
整体的代码如下:
经测试:TimeFormat = "2006-01-02 15:04:05"只能适配"yyyy-mm-dd hh:mm:ss"这种格式,不能适配月日小时分钟秒不带0的情形(如:2020-6-1)。而TimeFormat = "2006-1-2 15:4:5",这种可以适配带0和不带0两种情形。
日期时间作为查询数据库条件尤其是拼接sql类型的,个人不建议model中的字段用time,多了反序列化步骤