Django批注在内存中返回结果

时间:2019-07-17 11:39:39

标签: python sql django postgresql orm

我在Django中有以下电话:

Activity.objects.values('user_field__username').annotate(Sum('reward'))

以下是我的“活动”表的架构:

  • 用户(用户模型的外键)
  • 奖励

每个用户在此表中可以有大约十二个条目。可以有1000万用户。

我想获得每个用户的总奖励,并同时向所有此类用户发送通知。上面的查询满足了我的要求,但是我被告知它不是最理想的,而且空间复杂度很高。原则上正确的做法是什么。

我的活动模型:

class Activity(models.Model):
    user_field = models.ForeignKey(get_user_model(), default=0)
    reward = models.PositiveSmallIntegerField(default=0)

0 个答案:

没有答案