Django:获取每个用户的发票、费用、提款。(ORM)关系
我已经被困了几个小时,无法找出正确的方法来做到这一点。所以基本上我知道循环并不是一个很好的做法,因为如果我们有很多用户,系统就会开始计时。所以我的想法是选择正确的方式来获得我需要的东西。
这是我们的核心方案:
我需要制作这种“桌子”,这些是我需要的东西:
这就是我们前端会显示的东西,所以现在,我只需要收集正确的数据并将其传递给我们的 FE。我们使用 celery 任务,所以时间总是固定的(例如周一下午 6 点)。
这是我迄今为止尝试过的..
for user in User.objects.all():
start_date = timezone.now() - timedelta(weeks=1)
# How to loop correctly over every user and check for invoices??
invoices = InvoiceItem.objects.select_related('invoice', 'invoice__operation_ptr_id')
# invoices[0].operation_ptr_id ???
循环for user in User.objects.all()可能应该替换为annotate. 我如何建立关系以获取发票、取款、费用?