summaryrefslogtreecommitdiff
path: root/django
diff options
context:
space:
mode:
authorClaude Paroz <claude@2xlibre.net>2013-11-18 14:05:59 +0100
committerClaude Paroz <claude@2xlibre.net>2013-11-18 20:32:13 +0100
commit97ac22ebfca0a5b0759f495cc5d7bed3f9da6615 (patch)
tree1a7d320125c93f1932996ed2bd0b2745a5f8d671 /django
parentbc0413cbc6fd472371e907f17303c5ddcc9b4642 (diff)
Fixed #21457 -- Allowed fixture file name to contain dots
Thanks Keryn Knight for the report.
Diffstat (limited to 'django')
-rw-r--r--django/core/management/commands/loaddata.py17
1 files changed, 8 insertions, 9 deletions
diff --git a/django/core/management/commands/loaddata.py b/django/core/management/commands/loaddata.py
index 6aec0c5703..667fbbf493 100644
--- a/django/core/management/commands/loaddata.py
+++ b/django/core/management/commands/loaddata.py
@@ -175,12 +175,6 @@ class Command(BaseCommand):
cmp_fmts = list(self.compression_formats.keys()) if cmp_fmt is None else [cmp_fmt]
ser_fmts = serializers.get_public_serializer_formats() if ser_fmt is None else [ser_fmt]
- # Check kept for backwards-compatibility; it doesn't look very useful.
- if '.' in os.path.basename(fixture_name):
- raise CommandError(
- "Problem installing fixture '%s': %s is not a known "
- "serialization format." % tuple(fixture_name.rsplit('.')))
-
if self.verbosity >= 2:
self.stdout.write("Loading '%s' fixtures..." % fixture_name)
@@ -253,9 +247,14 @@ class Command(BaseCommand):
else:
cmp_fmt = None
- if len(parts) > 1 and parts[-1] in self.serialization_formats:
- ser_fmt = parts[-1]
- parts = parts[:-1]
+ if len(parts) > 1:
+ if parts[-1] in self.serialization_formats:
+ ser_fmt = parts[-1]
+ parts = parts[:-1]
+ else:
+ raise CommandError(
+ "Problem installing fixture '%s': %s is not a known "
+ "serialization format." % (''.join(parts[:-1]), parts[-1]))
else:
ser_fmt = None