Django исключает пользователей с одинаковой электронной почтой
У меня есть 2 модели пользователей в моем проекте django. Все устроено следующим образом: UserModel1 имеет 500 пользователей с электронной почтой и UserModel2 имеет 2000 пользователей с электронной почтой. И 300 пользователей зарегистрированы и в UserModel1 и в UserModel2. Это означает, что обе модели имеют по 300 пользователей. UserModel1 имеет 200 пользователей без учета общих пользователей, а UserModel2 имеет 1700 пользователей без учета общих пользователей.
Я хотел сделать запрос, который получает всех пользователей из UserModel2, которые не зарегистрированы в UserModel1. То есть я хочу получить 1700 пользователей, которые не являются общими. После некоторых исследований я остановился на следующем:
from django.db.models import Q
not_matching = UserModel2.objects.filter(~Q((email__in=UserModel1.objects.values('email')))
но безуспешно, есть идеи?