diff options
| author | David Smith <smithdc@gmail.com> | 2020-08-30 13:44:39 +0100 |
|---|---|---|
| committer | Mariusz Felisiak <felisiak.mariusz@gmail.com> | 2020-09-24 13:53:06 +0200 |
| commit | 599f2f79e22aaa475e45b72768babf70ac71a6b2 (patch) | |
| tree | 89974d8358d76832ec25fbf8c7a3981bb4e8c653 /django/forms | |
| parent | 1ac337cca61570ed64acf02e1700483f7fd02cf6 (diff) | |
Fixed #30563 -- Optimized form Media by removing duplicated assets when adding.
Diffstat (limited to 'django/forms')
| -rw-r--r-- | django/forms/widgets.py | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/django/forms/widgets.py b/django/forms/widgets.py index 7ea3c7bcbf..1b1c1439cb 100644 --- a/django/forms/widgets.py +++ b/django/forms/widgets.py @@ -146,8 +146,14 @@ class Media: def __add__(self, other): combined = Media() - combined._css_lists = self._css_lists + other._css_lists - combined._js_lists = self._js_lists + other._js_lists + combined._css_lists = self._css_lists[:] + combined._js_lists = self._js_lists[:] + for item in other._css_lists: + if item and item not in self._css_lists: + combined._css_lists.append(item) + for item in other._js_lists: + if item and item not in self._js_lists: + combined._js_lists.append(item) return combined |
