如何计算属性的和

2024-04-25 20:23:44 发布

您现在位置:Python中文网/ 问答频道 /正文

大家好,我的问题是:

模型.py

class Plant(models.Model)
   nominal_power = models.PositiveIntegerField()
   module_nominal_power= models.PositiveIntegerField()

@property
    def no_modules(self):
       return round(self.nominal_power*1000/self.module_nominal_power)

视图.py

^{pr2}$

我得到一个错误:无法将关键字“no_modules”解析为字段。无法将关键字“no_modules”解析为字段。

我不明白失败的意义,但我怎样才能得到总数呢?在


Tags: nopy模型selfmodulesmodelmodelsproperty
2条回答

也许用F类

from django.db.models import F
total_no_modules = plants.aggregate(sum=Sum(F('nominal_power')*1000-F('module_nominal_power')))

@Marcin你是对的,但我在找这个:

def home(request):
        plants = Plant.objects.filter(user=request.user)
        total_power = plants.aggregate(sum=Sum('nominal_power'))
        total_no_modules = 0
        for plant in plants
            total_no_modules = total_no_modules + plant.no_modules
        template = 'data/home.html'
        context = {'plants':plants,
                   'total_power':total_power,
                   'total_no_modules':total_no_modules}
        return render(request, template, context)

相关问题 更多 >

    热门问题