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')
打印instance.date_paid 打印存储在数据库中的所有date_paid,但 str(instance.date_paid)为无。
我的输出有以下行
此就业数据是按“无”支付的。你不能继续退休
如何在if语句中使用 instance.date_paid 。
答案 0 :(得分:1)
如果您想在date_paid
None
{/ p>}时不应用支票
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')
但是,为什么不使用.filter()
并且首先只获取相关记录:
GratuityPayment.objects.filter(date_paid__isnull=False,
employment_number=employment_number)
答案 1 :(得分:0)
实际上是在工作。它的给定无,因为表中的特定表行确实没有。
我刚刚填充了date_paid,它返回了日期而不是None。