#22341: Split django.db.models.fields.related into multiple modules.
-------------------------------------+-------------------------------------
     Reporter:  loic84               |                    Owner:  aaugustin
         Type:                       |                   Status:  assigned
  Cleanup/optimization               |
    Component:  Database layer       |                  Version:  master
  (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 aaugustin):

 The discussions on the previous attempt show that grouping code by the
 type of relation (one-to-one, one-to-many, many-to-many) doesn't work very
 well. It raises hard questions about where code would end up after
 plausible refactorings.

 I'd like to suggest a different approach: group code by the type of
 objects defined:

 - descriptors
 - managers
 - "rel objects" (these don't have a good name)
 - etc.

 This is straightforward, reasonably future proof — if we introduce a new
 kind of object it's easy to add a module.

 It groups similar code nicely and allows for module docstrings explaining
 the role of each layer.

--
Ticket URL: <https://code.djangoproject.com/ticket/22341#comment:11>
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.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/064.faa1456864363aa9564070425caa6567%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to