summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim Graham <timograham@gmail.com>2022-04-13 20:17:00 -0400
committerMariusz Felisiak <felisiak.mariusz@gmail.com>2022-04-14 06:46:42 +0200
commitdb83ac48d4015ce3487405481426c3d2d38335df (patch)
tree0e421a63a0f7ec35472682007d10aacb5b8d1bb0
parenta32876606f1346d4fbdab3813061f8a79cb23ac2 (diff)
Expanded QuerySet.explain() error message if a backend supports no formats.
-rw-r--r--django/db/backends/base/operations.py4
-rw-r--r--tests/queries/test_explain.py2
2 files changed, 6 insertions, 0 deletions
diff --git a/django/db/backends/base/operations.py b/django/db/backends/base/operations.py
index 4e6a67685f..12f37e3404 100644
--- a/django/db/backends/base/operations.py
+++ b/django/db/backends/base/operations.py
@@ -754,6 +754,10 @@ class BaseDatabaseOperations:
msg = "%s is not a recognized format." % normalized_format
if supported_formats:
msg += " Allowed formats: %s" % ", ".join(sorted(supported_formats))
+ else:
+ msg += (
+ f" {self.connection.display_name} does not support any formats."
+ )
raise ValueError(msg)
if options:
raise ValueError("Unknown options: %s" % ", ".join(sorted(options.keys())))
diff --git a/tests/queries/test_explain.py b/tests/queries/test_explain.py
index 1d17ef8191..f61fe01e9d 100644
--- a/tests/queries/test_explain.py
+++ b/tests/queries/test_explain.py
@@ -74,6 +74,8 @@ class ExplainTests(TestCase):
msg += " Allowed formats: %s" % ", ".join(
sorted(connection.features.supported_explain_formats)
)
+ else:
+ msg += f" {connection.display_name} does not support any formats."
with self.assertRaisesMessage(ValueError, msg):
Tag.objects.explain(format="does not exist")