嗨,我用的是django,我的模型是这样的
class SignupMonthlyPoint(models.Model):
user = models.ForeignKey(Profile, on_delete=models.CASCADE, related_name='SignupMonthlyPoints')
timestamp = models.DateTimeField(auto_now_add=True)
value = models.FloatField()
我得到了最近30天的数据
def get_signupfromlinkmonthlypoints():
total_for_last_month =request.user.profile.SignupMonthlyPoint.filter(
timestamp__gt=datetime.datetime.now() - relativedelta(months=1)
).aggregate(
total=Sum('value')
)['total']
print(total_for_last_month)
但当我分析过去30天的数据时,不是上个月的数据。我想把整个8月份的数据做成9月份的最后一个月,然后是整个7月份的数据,以此类推
我先计算月份的开始和结束日期:
然后得到相应的
SignupMonthlyPoint
:您可能需要在日期上使用
timezone.make_aware()
来添加时区,并使Django能够识别它们相关问题 更多 >
编程相关推荐