#31486: Deprecate passing unsaved objects to related filters.
-------------------------------------+-------------------------------------
Reporter: Mapiarz | Owner: raydeal
Type: Bug | Status: assigned
Component: Database layer | Version: dev
(models, ORM) |
Severity: Normal | Resolution:
Keywords: | Triage Stage: Accepted
Has patch: 1 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 1
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------
Comment (by raydeal):
Replying to [comment:4 Hasan Ramezani]:
> As I [https://github.com/django/django/pull/12768#discussion_r412815335
commented on PR]:
>
> I don't know how to distinguish between `p2.choice_set.all()` and
`Choice.objects.filter(poll=p2)`, It seems `get_normalized_value` receives
the same (value and lhs) for these both cases.
>
> I've also tried to implement it in `RelatedLookupMixin.get_prep_lookup`
based on
[https://github.com/django/django/pull/12768#discussion_r412882870 Mariusz
comment on PR], but still same problem. the `lhs` and `rhs` have the same
value in `p2.choice_set.all()` and `Choice.objects.filter(poll=p2)` cases.
After looking at code and trying implement solution, my conclusion is: it
is connected with #19580, if FK raises ValueError like M2M does it will
open door to fix this without a struggle how to distinguish between
`p2.choice_set.all()` and `Choice.objects.filter(poll=p2)` because first
case will raise ValueError before `filter` is evaluated.
--
Ticket URL: <https://code.djangoproject.com/ticket/31486#comment:9>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.
--
You received this message because you are subscribed to the Google Groups
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/django-updates/065.4a78477f7446e2e61324550e7e54e2b6%40djangoproject.com.