[Django] #35958: Issue with the distinct() function when specifying a field to run it on

5 views
Skip to first unread message

Django

unread,
Nov 30, 2024, 8:36:59 PM11/30/24
to django-...@googlegroups.com
#35958: Issue with the distinct() function when specifying a field to run it on
-------------------------------------+-------------------------------------
Reporter: adofosam | Type: Bug
Status: new | Component: Database
| layer (models, ORM)
Version: 5.1 | Severity: Normal
Keywords: distinct | Triage Stage:
| Unreviewed
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------
When I attempt to run the following code, I get a error.

Code:
"""
user = User.objects.get(id=user_id)
list = List.objects.filter(user=user).order_by('email').distinct('email')
"""

Error (Context: my app is called "lists"):
"""
django.db.utils.ProgrammingError: SELECT DISTINCT ON expressions must
match initial ORDER BY expressions
LINE 1: SELECT COUNT(*) FROM (SELECT DISTINCT ON ("lists_list"...
"""

I'm using a postgresql database and my list model is as follows:
"""
class EventList(models.Model): # List for Marketting
id = models.UUIDField(primary_key=True, default=uuid.uuid4,
editable=False, unique=True)
user= models.ForeignKey(User, on_delete=models.CASCADE)
email = models.EmailField()
"""
--
Ticket URL: <https://code.djangoproject.com/ticket/35958>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.
Reply all
Reply to author
Forward
0 new messages