diff options
author | Allen Jonathan David <allenajdjonathan@gmail.com> | 2022-01-01 18:38:27 +0530 |
---|---|---|
committer | Mariusz Felisiak <felisiak.mariusz@gmail.com> | 2022-01-04 13:15:29 +0100 |
commit | 205f67cd5bea242fac6b0380fa26570505d07dcb (patch) | |
tree | 824ebd134a63bd3f8908287b258819fc71071885 /django/utils/deconstruct.py | |
parent | 194ca77092a2507a57c288c35b279eb2cb4a64fb (diff) | |
download | django-205f67cd5bea242fac6b0380fa26570505d07dcb.tar.gz |
Refs #33216 -- Made @deconstructible do not change path for subclasses.
Diffstat (limited to 'django/utils/deconstruct.py')
-rw-r--r-- | django/utils/deconstruct.py | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/django/utils/deconstruct.py b/django/utils/deconstruct.py index aa952f6b73..9d073902f3 100644 --- a/django/utils/deconstruct.py +++ b/django/utils/deconstruct.py @@ -23,7 +23,7 @@ def deconstructible(*args, path=None): and keyword arguments. """ # Fallback version - if path: + if path and type(obj) is klass: module_name, _, name = path.rpartition('.') else: module_name = obj.__module__ @@ -40,7 +40,9 @@ def deconstructible(*args, path=None): "https://docs.djangoproject.com/en/%s/topics/migrations/#serializing-values" % (name, module_name, get_docs_version())) return ( - path or '%s.%s' % (obj.__class__.__module__, name), + path + if path and type(obj) is klass + else f'{obj.__class__.__module__}.{name}', obj._constructor_args[0], obj._constructor_args[1], ) |