diff options
| author | Adam Johnson <me@adamj.eu> | 2024-03-04 19:26:23 +0000 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-03-04 20:26:23 +0100 |
| commit | ab22b7c65fa3dc60b097362939ccf49c1c47bc56 (patch) | |
| tree | bbcd8e13b116eb7c82a0d578745ebec4ebce47d7 | |
| parent | 368a8a3a83885a13776a530920f0317a40e7989d (diff) | |
Fixed #35266 -- Deferred formatting in RelatedField._check_clashes().
| -rw-r--r-- | django/db/models/fields/related.py | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/django/db/models/fields/related.py b/django/db/models/fields/related.py index 9386567e71..f903dc2f22 100644 --- a/django/db/models/fields/related.py +++ b/django/db/models/fields/related.py @@ -264,9 +264,8 @@ class RelatedField(FieldCacheMixin, Field): # model_set and it clashes with Target.model_set. potential_clashes = rel_opts.fields + rel_opts.many_to_many for clash_field in potential_clashes: - # i.e. "app_label.Target.model_set". - clash_name = "%s.%s" % (rel_opts.label, clash_field.name) if not rel_is_hidden and clash_field.name == rel_name: + clash_name = f"{rel_opts.label}.{clash_field.name}" errors.append( checks.Error( f"Reverse accessor '{rel_opts.object_name}.{rel_name}' " @@ -283,6 +282,7 @@ class RelatedField(FieldCacheMixin, Field): ) if clash_field.name == rel_query_name: + clash_name = f"{rel_opts.label}.{clash_field.name}" errors.append( checks.Error( "Reverse query name for '%s' clashes with field name '%s'." @@ -302,12 +302,10 @@ class RelatedField(FieldCacheMixin, Field): # Model.m2m accessor. potential_clashes = (r for r in rel_opts.related_objects if r.field is not self) for clash_field in potential_clashes: - # i.e. "app_label.Model.m2m". - clash_name = "%s.%s" % ( - clash_field.related_model._meta.label, - clash_field.field.name, - ) if not rel_is_hidden and clash_field.accessor_name == rel_name: + clash_name = ( + f"{clash_field.related_model._meta.label}.{clash_field.field.name}" + ) errors.append( checks.Error( f"Reverse accessor '{rel_opts.object_name}.{rel_name}' " @@ -324,6 +322,9 @@ class RelatedField(FieldCacheMixin, Field): ) if clash_field.accessor_name == rel_query_name: + clash_name = ( + f"{clash_field.related_model._meta.label}.{clash_field.field.name}" + ) errors.append( checks.Error( "Reverse query name for '%s' clashes with reverse query name " |
