Opened 10 years ago

Closed 10 years ago

#24998 closed Bug (duplicate)

ManyToManyField generating wrong query

Reported by: Arthur Rio Owned by: nobody
Component: Database layer (models, ORM) Version: dev
Severity: Normal Keywords: ManyToManyField, bad query
Cc: Triage Stage: Unreviewed
Has patch: no Needs documentation: no
Needs tests: no Patch needs improvement: no
Easy pickings: no UI/UX: no
Pull Requests:How to create a pull request

Description (last modified by Arthur Rio)

If two models have a ManyToManyField pointing to the same model, the query generated for the lookup is incorrect. I have created a repo on github with a simple test (https://github.com/arthurio/manytomanybug/releases/tag/v1.0) and you can also find the code enclosed as a .zip file.

There are 3 models:

  • Upload: that will be common to several other models.
  • FormA with a ManyToManyField to the Upload model.
  • FormB with a ManyToManyField to the Upload model.

When trying to do formAinstance.signature.all(), the query generated is using the FormB table to do the join instead of the FormA table.

Change History (6)

by Arthur Rio, 10 years ago

Attachment: manytomanybug-1.0.zip added

Django project containing the test

comment:1 by Arthur Rio, 10 years ago

Description: modified (diff)

by Arthur Rio, 10 years ago

Attachment: manytomanybug-1.1.zip added

Django project containing the test

comment:2 by Tim Graham, 10 years ago

This looks like it might be a duplicate of #24505 (fixed in master, but not 1.8). Can you reproduce the issue against master?

comment:3 by Arthur Rio, 10 years ago

You are right, it's fixed in master, not in 1.8.2.

Last edited 10 years ago by Arthur Rio (previous) (diff)

comment:4 by Arthur Rio, 10 years ago

Resolution: duplicate
Status: newclosed
Note: See TracTickets for help on using tickets.
Back to Top