Opened 8 years ago

Closed 8 years ago

#6639 closed (duplicate)

to_field is not followed in objects.get(fkmodel__fkattr=something) lookups

Reported by: dfrishberg <dfrishberg@…> Owned by: nobody
Component: Database layer (models, ORM) Version: master
Severity: Keywords:
Cc: Triage Stage: Unreviewed
Has patch: yes Needs documentation: no
Needs tests: no Patch needs improvement: no
Easy pickings: UI/UX:

Description

When the to_field of a ForeignKey field is specified as something other than the primary key, FK lookups do not work properly in filtering. The to_field is ignored, because the django/db/models/query.py:lookup_inner() function follows a pk (as of revision 7138, this is at line 1031).

There's probably a better way to get the field name than I've got in this patch, and I imagine there may be more safety checking than I'm doing. But this fixed my problem.

Attachments (1)

query_patch.diff (1.1 KB) - added by dfrishberg <dfrishberg@…> 8 years ago.

Download all attachments as: .zip

Change History (2)

Changed 8 years ago by dfrishberg <dfrishberg@…>

comment:1 Changed 8 years ago by ubernostrum

  • Needs documentation unset
  • Needs tests unset
  • Patch needs improvement unset
  • Resolution set to duplicate
  • Status changed from new to closed

Feels like a dupe of #4306, which is fixed in queryset-refactor. Please reopen if you can demonstrate that this is not the same issue.

Note: See TracTickets for help on using tickets.
Back to Top