如何在if b中使用for循环变量

2024-10-02 08:23:13 发布

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

for instance in GratuityPayment.objects.all():
        print instance.date_paid
        if (employment_number == instance.employment_number):
            raise forms.ValidationError('This Employment Mumber was paid on ' + str(instance.date_paid) + '. You cannot proceed with this retirement')

打印实例.付款日期打印存储在数据库中的所有付款日期,但str(实例.付款日期)未给出任何值

我把下面这行作为我的输出

这一就业数字没有支付。您不能继续执行此退休操作

如何在if语句中使用instance.date\u paid


Tags: 实例instanceinnumberfordateifobjects
2条回答

如果要在date_paidNone时不应用检查:

for instance in GratuityPayment.objects.all():
    if instance.date_paid is not None and employment_number == instance.employment_number:
        raise forms.ValidationError('This Employment Mumber was paid on ' + str(instance.date_paid) + '. You cannot proceed with this retirement')

但是,为什么不首先使用^{}只获取相关记录:

GratuityPayment.objects.filter(date_paid__isnull=False, 
                               employment_number=employment_number)

它实际上在工作。它的给定值为None,因为该特定表行在表中没有

我只是填充了支付日期,它返回的是日期而不是无

相关问题 更多 >

    热门问题