flask时间格式化


在前端显示为该问题 "几分钟前发表或几天前发表"

后端通过filter注册

参考资料

设计需求

  • 如果问题发表超过 10天 ,则显示为 /%Y-%m-%d %H:%M/
  • 如果小于 10天 ,但是大于 1天 ,则显示为 /n天前/ 发表
  • 如果小于 1天 ,但是大于 1小时 ,则显示为 /n小时前/ 发表
  • 如果小于 1小时 ,但是大于 90秒 ,则显示为 /n分钟前/ 发表
  • 如果小于 90秒 ,则显示为 /刚刚/ 发表

具体实现

通过 diff.daysdiff.seconds 实现

比如,大于10天

if diff.days > 10:
    return dt.strftime('%Y-%m- …