通过querySet djang检查我的数据库中是否存在列表

2024-05-16 02:14:58 发布

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

我想验证我的数据库中是否存在变量列表 我试过这个:

if Magazine.objects.filter(mag=post.mag_no, prodc_magt_no__in[post.cn1,post.cn2,post.cn3,post.cn4)

但是这个查询集至少检查一个值,我想检查数据库中的整个list:post.cn1,post.cn2,post.cn3,post.cn4

我的数据库

ID     WORK_YMD    LINE_NM  MODEL_CODE    MAG_NO             PRODC_MAGT_NO 
    118002  20191015    PBA-21F BN94-14806W A656MAF00001    BR10BN9414806WA656MAE4035
    118003  20191015    PBA-21F BN94-14806W A656MAF00001    BR10BN9414806WA656MAE4027
    118004  20191015    PBA-21F BN94-14806W A656MAF00001    BR10BN9414806WA656MAE4039
    118005  20191015    PBA-21F BN94-14806W A656MAF00001    BR10BN9414806WA656MAE4037
    118006  20191015    PBA-21F BN94-14806W A656MAF00001    BR10BN9414806WA656MAE4038

注意:mag=post.mag_no是必需的!你知道吗


Tags: no数据库列表ifpostpbamagmagazine
1条回答
网友
1楼 · 发布于 2024-05-16 02:14:58

我不确定这是否只是一个复制粘贴问题,但这行代码是无效的。它缺少一个=操作符并正确地封闭了列表。在没有看到实际模型的情况下,理论上这是可行的:

if Magazine.objects.filter(mag=post.mag_no, prodc_magt_no__in=[post.cn1,post.cn2,post.cn3,post.cn4]).exists()

exists()将检查该筛选器中是否至少有一个条目,它不会告诉您有多少条目。正如注释中所建议的那样,count()可以为您完成这项工作。你知道吗

相关问题 更多 >