Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/279.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 筛选外键项_Python_Django - Fatal编程技术网

Python 筛选外键项

Python 筛选外键项,python,django,Python,Django,我有几个模型,我正在尝试根据申请该职位的申请人筛选职位更新表中的候选人 class Position(models.Model): title = models.CharField(max_length=128,verbose_name='Title') candidate = models.ForeignKey('careers.Applicant', on_delete=models.SET_NULL, related_name='candidate',

我有几个模型,我正在尝试根据申请该职位的申请人筛选职位更新表中的候选人

class Position(models.Model):
    title = models.CharField(max_length=128,verbose_name='Title')
    candidate = models.ForeignKey('careers.Applicant',
    on_delete=models.SET_NULL,
    related_name='candidate',
    blank=True,
    null=True
)

class Applicant(models.Model):
    first_name = models.CharField(max_length=128,blank=False,verbose_name="First Name")
    position = models.ManyToManyField(Position,related_name='applicants',
                                blank=True)

谢谢

谢谢。我怎样才能从不是所有的应聘者中选择“候选人”,而仅仅是那些申请该职位的人?
# In general, if you want filter foreign key items

Position.objects.filter(candidate__position='your value')


# For your form, you can queryset attribute of your model field

class PositionUpdateForm(forms.ModelForm):
    def __init__(self, *args, **kwargs):
        super().__init__(*args, **kwargs)
        self.fields['candidate'].queryset = Position.objects.filter(candidate__position='your value')