#19385: Add support for multiple-column join -------------------------------------+------------------------------------- Reporter: cseibert | Owner: nobody Type: New feature | Status: new Component: Database layer | Version: 1.4 (models, ORM) | Resolution: Severity: Normal | Triage Stage: Accepted Keywords: join | Needs documentation: 0 Has patch: 1 | Patch needs improvement: 1 Needs tests: 0 | UI/UX: 0 Easy pickings: 0 | -------------------------------------+-------------------------------------
Comment (by akaariai): I have done some testing, and this is looking excellent. You have convinced me that the ForeignObject is a good idea. I tried the ForeignObject with ActiveTranslationField (a "reverse foreign key" fetching current active language's translations). There is need for couple of simple additions to ForeignObject, but otherwise things seems to just work. The tests & changes for translation fields are here: https://github.com/akaariai/django/commit/790fc1693744fe3a8f407080527a0c70b1f4a759. This is not intended for inclusion in your patch as is, but I would like to add the ability to do the reverse joining stuff at some point. Only minor changes. The get_extra_join_sql() method could likely be replaced with get_extra_filter(). The get_extra_filter() could work for both the descriptor and extra_join_restriction cases. In addition this would be much better than generating raw SQL for custom backend support. This is not needed in this ticket, but definitely something to think about for future work. Unfortunately it seems I will be very busy still for the couple next weeks, so I can't promise a full review & commit soon. What I have managed to review so far suggests that there isn't much work to do. -- Ticket URL: <https://code.djangoproject.com/ticket/19385#comment:28> 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 django-updates+unsubscr...@googlegroups.com. To post to this group, send email to django-updates@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.