问题描述
我正在制作一个 Django 应用程序来打印每月
我一直在寻找如何打印特定月份(或可能是上个月)创建的对象(费用) 我检查了许多与此类似的堆栈溢出问题,但找不到合适的答案。
很多人使用
ERROR Invalid hexadecimal character ' '
但是这种方法如何适合打印特定月份的费用。
我想使用类似的方法
datetime.timedelta(days=30)
有没有办法做到这一点?
解决方法
这是一个很好的方法
首先,在您的 views.py 文件中:
- 从声明今天的日期开始
today = datetime.date.today()
- 需要过滤掉上个月创建的对象(这里以5月为例)
may_month_expenses =
Expenses.objects.filter(created__month='05',created__year=today.year)
说明:
费用是模型
的名称objects.filter() 用于打印满足 括号中的条件。
created 是费用中的 DateTimeField
created__month='05' 指定对象应该已经创建 五月(第 5 个月)
created__year = today.year 很重要,因为您要打印对象 仅在 今年(2021 年) 的 5 月创建。
这将打印在 2021 年 5 月创建的对象