From 4dec7eded9e58d7cefe54ea32137599cd4d1ea69 Mon Sep 17 00:00:00 2001 From: David Sanders Date: Sun, 22 Oct 2023 18:41:30 +1100 Subject: [5.0.x] Fixed #34921 -- Fixed crash of warning for unbound naive datetimes. Backport of b5311ee23219cfb676e2e67667ecba1e5d363aa0 from main --- django/db/models/fields/__init__.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'django') diff --git a/django/db/models/fields/__init__.py b/django/db/models/fields/__init__.py index 5f8f59d69f..f15b5856bf 100644 --- a/django/db/models/fields/__init__.py +++ b/django/db/models/fields/__init__.py @@ -1595,10 +1595,13 @@ class DateTimeField(DateField): # local time. This won't work during DST change, but we can't # do much about it, so we let the exceptions percolate up the # call stack. + try: + name = f"{self.model.__name__}.{self.name}" + except AttributeError: + name = "(unbound)" warnings.warn( - "DateTimeField %s.%s received a naive datetime " - "(%s) while time zone support is active." - % (self.model.__name__, self.name, value), + f"DateTimeField {name} received a naive datetime ({value}) while " + "time zone support is active.", RuntimeWarning, ) default_timezone = timezone.get_default_timezone() -- cgit v1.3