-
-
Notifications
You must be signed in to change notification settings - Fork 76
Labels
bugSomething isn't workingSomething isn't working
Description
Describe the bug
Traceback (most recent call last):
File "/.virtualenvs/openwisp2/lib/python3.10/site-packages/django/core/handlers/exception.py", line 42, in inner
response = await get_response(request)
File "/.virtualenvs/openwisp2/lib/python3.10/site-packages/django/core/handlers/base.py", line 253, in _get_response_async
response = await wrapped_callback(
File "/usr/lib/python3.10/concurrent/futures/thread.py", line 58, in run
result = self.fn(*self.args, **self.kwargs)
File "/.virtualenvs/openwisp2/lib/python3.10/site-packages/django/contrib/admin/options.py", line 719, in wrapper
return self.admin_site.admin_view(view)(*args, **kwargs)
File "/.virtualenvs/openwisp2/lib/python3.10/site-packages/django/utils/decorators.py", line 192, in _view_wrapper
result = _process_exception(request, e)
File "/.virtualenvs/openwisp2/lib/python3.10/site-packages/django/utils/decorators.py", line 190, in _view_wrapper
response = view_func(request, *args, **kwargs)
File "/.virtualenvs/openwisp2/lib/python3.10/site-packages/django/views/decorators/cache.py", line 80, in _view_wrapper
response = view_func(request, *args, **kwargs)
File "/.virtualenvs/openwisp2/lib/python3.10/site-packages/django/contrib/admin/sites.py", line 246, in inner
return view(request, *args, **kwargs)
File "/Code/openwisp/openwisp-controller/openwisp_controller/config/admin.py", line 164, in change_view
return super().change_view(request, object_id, form_url, extra_context)
File "/.virtualenvs/openwisp2/lib/python3.10/site-packages/reversion/admin.py", line 162, in change_view
return super().change_view(request, object_id, form_url, extra_context)
File "/Code/openwisp/openwisp-utils/openwisp_utils/admin.py", line 126, in change_view
return super().change_view(
File "/.virtualenvs/openwisp2/lib/python3.10/site-packages/django/contrib/admin/options.py", line 1987, in change_view
return self.changeform_view(request, object_id, form_url, extra_context)
File "/.virtualenvs/openwisp2/lib/python3.10/site-packages/django/utils/decorators.py", line 48, in _wrapper
return bound_method(*args, **kwargs)
File "/.virtualenvs/openwisp2/lib/python3.10/site-packages/django/utils/decorators.py", line 192, in _view_wrapper
result = _process_exception(request, e)
File "/.virtualenvs/openwisp2/lib/python3.10/site-packages/django/utils/decorators.py", line 190, in _view_wrapper
response = view_func(request, *args, **kwargs)
File "/.virtualenvs/openwisp2/lib/python3.10/site-packages/django/contrib/admin/options.py", line 1843, in changeform_view
return self._changeform_view(request, object_id, form_url, extra_context)
File "/.virtualenvs/openwisp2/lib/python3.10/site-packages/django/contrib/admin/options.py", line 1893, in _changeform_view
if all_valid(formsets) and form_validated:
File "/.virtualenvs/openwisp2/lib/python3.10/site-packages/django/forms/formsets.py", line 584, in all_valid
return all([formset.is_valid() for formset in formsets])
File "/.virtualenvs/openwisp2/lib/python3.10/site-packages/django/forms/formsets.py", line 584, in <listcomp>
return all([formset.is_valid() for formset in formsets])
File "/.virtualenvs/openwisp2/lib/python3.10/site-packages/django/forms/formsets.py", line 384, in is_valid
self.errors
File "/.virtualenvs/openwisp2/lib/python3.10/site-packages/django/forms/formsets.py", line 366, in errors
self.full_clean()
File "/.virtualenvs/openwisp2/lib/python3.10/site-packages/django/forms/formsets.py", line 429, in full_clean
form_errors = form.errors
File "/.virtualenvs/openwisp2/lib/python3.10/site-packages/django/forms/forms.py", line 201, in errors
self.full_clean()
File "/Code/openwisp/openwisp-firmware-upgrader/openwisp_firmware_upgrader/admin.py", line 359, in full_clean
device=self.cleaned_data["device"],
Exception Type: KeyError at /admin/config/device/5131f85b-5604-46be-a0da-b45ded388a08/change/
Exception Value: 'device'
Steps To Reproduce
Steps to reproduce the behavior:
- Go to device detail page in admin
- Go to "Firmware" tab
- Click on "Add another firmware"
- Do not set the image field and submit
Expected behavior
A ValidationError should be raised instead, which will be shown in the admin UI.
System Informatioon:
Not relevant.
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't working
Type
Projects
Status
Backlog
Status
To do (general)