#22778: Specify default value for a Model's RelatedFields related_name.
-------------------------------------+-------------------------------------
     Reporter:  renaud.parent@…      |                    Owner:  anonymous
         Type:  New feature          |                   Status:  assigned
    Component:  Database layer       |                  Version:  master
  (models, ORM)                      |               Resolution:
     Severity:  Normal               |             Triage Stage:  Accepted
     Keywords:                       |      Needs documentation:  0
    Has patch:  1                    |  Patch needs improvement:  1
  Needs tests:  1                    |                    UI/UX:  0
Easy pickings:  0                    |
-------------------------------------+-------------------------------------
Changes (by jorgecarleitao):

 * cc: jorgecarleitao@… (added)
 * needs_tests:  0 => 1


Comment:

 Hi RenaudParent, thanks for the patch.

 I've reviewed your PR and made minor comments on the PR in github. It
 seems promising.

 As far as I can tell, the PR still requires:

 1. The patch doesn't addressed Meta subclassing yet: i.e. what happens
 when the Model is subclassed? At the moment it seems the
 `default_related_name` is inherited, which can cause a clash; see [1].

 2. tests: it passes all tests means it is compatible with current Django
 functionality, which is great; however, we must ensure it is also
 compatible with what we want to achieve with it, namely, that if we add a
 `default_related_name` to `Meta`, the relations without `related_name` get
 the default one, while others don't. We may also want to test subclassing.

 3. documentation: besides being in the API for Meta, it would be nice to
 document it in other places, specially in `docs/db/models`, section "Be
 careful with `related_name`".

 (after 1.-3.)
 4. There should be an item in `docs/releases/1.X.rst` (X=8?) describing
 this new functionality.

 5. If core devs agree, refactor tests where this new functionality can be
 useful. For example, the model `Book` in `tests/costum_managers/models.py`
 seems a good candidate.

 [1] https://docs.djangoproject.com/en/dev/topics/db/models/#be-careful-
 with-related-name

-- 
Ticket URL: <https://code.djangoproject.com/ticket/22778#comment:8>
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 post to this group, send email to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/081.6cb0234ca8d35cc4ed1d4dadf259f9bb%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to