【问题标题】:How to loop through object fields in django如何循环遍历 django 中的对象字段
【发布时间】:2020-06-12 00:28:15
【问题描述】:

我想遍历对象字段以更新它们的值,但我不太确定如何执行此操作。

class FinancePending(models.Model):
invoiceNumber = models.IntegerField
amountPaid = models.CharField(max_length=20)
AmountPending = models.IntegerField( blank=True, null=True)
TotalAmount = models.CharField(max_length=50, default=0)

现在我想计算一个函数中的金额。但它不起作用

     amount_paid = FinancePending.objects.values_list('amountPaid', flat=True)
        amount_paid = list(amount_paid)
        total_amount = FinancePending.objects.values_list('TotalAmount', flat=True)
        total_amount = list(total_amount)

        # total - paid
        TotalFee = [float(s.replace(',', '')) for s in total_amount]
        AmountPaid = [float(s.replace(',', '')) for s in amount_paid]
        finance_pending = FinancePending.objects.all()
        i = 0
        while i < len(TotalFee):
            amount_pending = TotalFee[i] - AmountPaid[i]
            FinancePending.objects.filter(invoiceNumber=i).values(AmountPending=amount_pending)
            setattr(finance_pending, 'AmountPending', str(amount_pending))
            i = 1 + i

【问题讨论】:

标签: python django django-models


【解决方案1】:

建议使用Query Expression,更强大更健壮

【讨论】:

    猜你喜欢
    • 2012-05-08
    • 2014-02-22
    • 1970-01-01
    • 2020-06-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-15
    • 1970-01-01
    相关资源
    最近更新 更多