Когда в моих настройках установлено значение DEBUG = True, я вижу следующую ошибку
Traceback:
File "/usr/local/lib/python3.6/site-packages/django/core/handlers/exception.py" in inner
34. response = get_response(request)
File "/usr/local/lib/python3.6/site-packages/django/core/handlers/base.py" in _get_response
115. response = self.process_exception_by_middleware(e, request)
File "/usr/local/lib/python3.6/site-packages/django/core/handlers/base.py" in _get_response
113. response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "/usr/local/lib/python3.6/site-packages/django/views/decorators/csrf.py" in wrapped_view
54. return view_func(*args, **kwargs)
File "/usr/local/lib/python3.6/site-packages/rest_framework/viewsets.py" in view
116. return self.dispatch(request, *args, **kwargs)
File "/usr/local/lib/python3.6/site-packages/rest_framework/views.py" in dispatch
495. response = self.handle_exception(exc)
File "/usr/local/lib/python3.6/site-packages/rest_framework/views.py" in handle_exception
455. self.raise_uncaught_exception(exc)
File "/usr/local/lib/python3.6/site-packages/rest_framework/views.py" in dispatch
492. response = handler(request, *args, **kwargs)
File "/usr/local/lib/python3.6/site-packages/rest_framework/mixins.py" in create
21. self.perform_create(serializer)
File "/device_mgmt/selection/views.py" in perform_create
84. serializer.save(realm=utils.get_realm_from_request(self.request))
File "/usr/local/lib/python3.6/site-packages/rest_framework/serializers.py" in save
214. self.instance = self.create(validated_data)
File "/usr/local/lib/python3.6/site-packages/rest_framework/serializers.py" in create
943. instance = ModelClass._default_manager.create(**validated_data)
File "/usr/local/lib/python3.6/site-packages/django/db/models/manager.py" in manager_method
82. return getattr(self.get_queryset(), name)(*args, **kwargs)
File "/usr/local/lib/python3.6/site-packages/django/db/models/query.py" in create
422. obj.save(force_insert=True, using=self.db)
File "/device_mgmt/selection/models.py" in save
123. self.full_clean()
File "/usr/local/lib/python3.6/site-packages/django/db/models/base.py" in full_clean
1203. raise ValidationError(errors)
Exception Type: ValidationError at /company/api/company/
Exception Value: {'id': ['Company with this Id already exists.']}
Модель выдает ошибку, но вызывает остальное представление структуры
455. self.raise_uncaught_exception(exc)
Как я могу сделать так, чтобы инфраструктура отдыха использовала исключение из модели django? Я думал, что это будет обработано автоматически, поскольку в исключении есть информация о том, что пошло не так.
Когда он возвращается, все, что у меня есть, это 500 с <h1>Server error<h1>
.
Я бы не предполагал, что мне нужно перехватить исключение и выполнить некоторую специальную обработку для него, поскольку это базовая ошибка django ValidationError.
Является ли проблема причиной того, что остальные компоненты также имеют тип ValidationError?