我有一个模型,它通过一个名为 person 的外键与另一个模型有关系。模型看起来像:
class PR(models.Model):
p_keyid = models.IntegerField(primary_key=True)
r_no = models.IntegerField(null=True, blank=True)
person = models.ForeignKey('person.Person', db_column = 'person_no')
recall_dt = models.DateTimeField(null=True, blank=True)
class Meta:
managed = False
db_table = 'person_r'
请注意,“托管”元是错误的(它不是我创建的表)。
有时表中存在不存在的person_no
值。person_r
例如,aPR.person
的值为 232。但是,id 为 232 的人不存在(外键指向不存在的对象)。如何过滤掉这些糟糕的 PR 实例?
在我看来,我有这个:
r_for_date = PR.objects.filter(recall_dt__range = (startdate, enddate)
我确实想r_for_date
包含不存在的人员属性的记录(在上面的示例中,不应显示人员 ID 为 232 的记录)。