Допустим, у меня есть модель
models.py
class user:
name = models.CharField(max_length=25)
class job:
job_name = models.CharField(max_length=25)
class user_job:
user = models.ForeignKey('user')
job = models.ForeignKey('job')
forms.py
jobs = (
('0', 'a'),
('1', 'b'),
('2', 'c'),
)
class searchForm:
box = forms.ModelMultipleChoiceField(
choices = jobs,
widget = forms.CheckboxSelectMultiple(),
label = 'Search',
)
Я могу искать пользователей, у которых есть работа "a" с
user_job.objects.filter(job__exact = 'a') ...
Я пытался найти пользователей, у которых есть как работа 'a', так и работа 'c', например, так
search_q = user_job.objects.filter(job__exact = 'a')
search_q = search_q.filter(job__exact = 'c')
, но у меня есть все пользователи у которых есть задание "a" или задание "c", и мне нужны все пользователи, у которых есть оба задания.
Есть ли способ отфильтровать его через Django, или мне нужно отфильтровать одно задание, а затем просмотреть результаты и проверить второе задание?