См.: LEFT JOIN Django ORM Это запрос для «отделов без добровольцев», но как его расширить, чтобы вернуть «отделы, для которых волонтер X не добровольно»? Я думаю, что эквивалентный SQL:
SELECT "app_department"."name"
FROM "app_department"
LEFT OUTER JOIN "app_departmentvolunteer"
ON ( "app_department"."id" = "app_departmentvolunteer"."department_id" and "app_departmentvolunteer"."volunteer_id" = "a_volunteer_id" )
WHERE "app_separtmentvolunteer"."id" IS NULL
Спасибо за любые ссылки, которые объясняют, как расширить это. Я еще не разбираюсь в фильтрах Django () и т. Д.: - (.