mirror of
https://github.com/django/django.git
synced 2025-05-07 15:36:29 +00:00
Fixed #23697 -- Improved ForeignObject.get_lookup_constraint() error message.
This commit is contained in:
parent
a4a58811b9
commit
00e667728b
@ -1766,7 +1766,12 @@ class ForeignObject(RelatedField):
|
|||||||
root_constraint = constraint_class()
|
root_constraint = constraint_class()
|
||||||
assert len(targets) == len(sources)
|
assert len(targets) == len(sources)
|
||||||
if len(lookups) > 1:
|
if len(lookups) > 1:
|
||||||
raise exceptions.FieldError('Relation fields do not support nested lookups')
|
raise exceptions.FieldError(
|
||||||
|
"Cannot resolve keyword %r into field. Choices are: %s" % (
|
||||||
|
lookups[0],
|
||||||
|
", ".join(f.name for f in self.model._meta.get_fields()),
|
||||||
|
)
|
||||||
|
)
|
||||||
lookup_type = lookups[0]
|
lookup_type = lookups[0]
|
||||||
|
|
||||||
def get_normalized_value(value):
|
def get_normalized_value(value):
|
||||||
|
@ -1164,6 +1164,15 @@ class Queries1Tests(BaseQuerysetTest):
|
|||||||
['<Author: a1>', '<Author: a2>', '<Author: a3>', '<Author: a4>']
|
['<Author: a1>', '<Author: a2>', '<Author: a3>', '<Author: a4>']
|
||||||
)
|
)
|
||||||
|
|
||||||
|
def test_lookup_constraint_fielderror(self):
|
||||||
|
msg = (
|
||||||
|
"Cannot resolve keyword 'unknown_field' into field. Choices are: "
|
||||||
|
"annotation, category, category_id, children, id, item, "
|
||||||
|
"managedmodel, name, parent, parent_id"
|
||||||
|
)
|
||||||
|
with self.assertRaisesMessage(FieldError, msg):
|
||||||
|
Tag.objects.filter(unknown_field__name='generic')
|
||||||
|
|
||||||
|
|
||||||
class Queries2Tests(TestCase):
|
class Queries2Tests(TestCase):
|
||||||
@classmethod
|
@classmethod
|
||||||
|
Loading…
x
Reference in New Issue
Block a user