django额外选择到qs

Posted

技术标签:

【中文标题】django额外选择到qs【英文标题】:django extra select to qs 【发布时间】:2021-11-26 19:14:12 【问题描述】:

如何在查询集中添加附加选择?

queryset = ActivityCollection.objects.filter(date_at__gte=from_date, date_at__lte=to_date).order_by('date_at')

看起来


        "date_at": "2021-11-24",
        "views": 25,
        "clicks": 1,
        "cost": "25.00"
,

我需要得到:


        "date_at": "2021-11-24",
        "views": 25,
        "clicks": 1,
        "cost": "25.00",
        "cpc": "25"

每次点击费用 = 费用/点击次数

【问题讨论】:

【参考方案1】:

您可以在模型中使用属性属性。 例如:

class Company(models.Model):
    # your fields
    views = models.IntegerField()
    cost = models.IntegerField(

    @property
    def cpc(self):
        return self.cost/self.views

【讨论】:

以上是关于django额外选择到qs的主要内容,如果未能解决你的问题,请参考以下文章