Django - how do I filter or exclude by two identical fields?

46 views Asked by At

We are using Django for our website. I have a query for model User and I want to exclude users which have two identical fields - in this case id and username. So if the id==username, I want to exclude them. How do I do it?

The query looks like:

users = User.objects.filter(...)

And I want to add .exclude(...) where the id and username fields are equal.

1

There are 1 answers

0
willeM_ Van Onsem On BEST ANSWER

You can refer to a field with an F expression [Django-doc], so:

from django.db.models import F

users = User.objects.exclude(id=F('username'))