Встречается на собеседованиях • сегодня
Как происходит обработка исключений в Django
В Django обработка исключений происходит через middleware или декораторы. Основные подходы:
- Middleware - глобальная обработка через
process_exception():
python
class CustomExceptionMiddleware:
def __init__(self, get_response):
self.get_response = get_response
def __call__(self, request):
return self.get_response(request)
text
def process_exception(self, request, exception):
if isinstance(exception, SomeSpecificError):
return HttpResponse("Custom error", status=400)
return Nonetext
2. **Декораторы** - локальная обработка:
```python
from django.views.decorators.http import require_http_methods
@require_http_methods(["GET"])
def my_view(request):
try:
# код представления
except SomeError:
return HttpResponseBadRequest()- Встроенные обработчики:
handler400- Bad Requesthandler403- Permission Deniedhandler404- Page Not Foundhandler500- Server Error
Для кастомных страниц ошибок создаются шаблоны 400.html, 404.html и т.д. в корне шаблонов.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы