Я бы хотел вернуть 410 ошибок на некоторых из моих страниц Django вместо возврата 404 . В принципе, вместо вызова поднять Http404 ('какое-то сообщение об ошибке')
, я хотел бы вместо этого вызвать ярлык поднять Http410 ('какое-то сообщение об ошибке')
.
Я запутался, потому что в django.http, функция Http404 выглядит просто:
class Http404(Exception):
pass
Итак, если я сделаю то же самое и создам свою функцию Http410, я бы предположил, что это будет выглядеть так:
class Http410(Exception):
pass
Однако выполнение этого возвращает исключение, но выдает ошибку 500 страница. Как мне воссоздать волшебство исключения Http404? Я должен отметить, что мне нужно вызвать исключение из моих моделей (не представлений), поэтому я не могу просто вернуть HttpResponseGone.
Заранее спасибо!
Обновление:
Я сбит с толку, потому что в django.http функция Http404 выглядит просто:
class Http404(Exception):
pass
Итак, если я сделаю то же самое и создам свою функцию Http410, я бы предположил, что это будет выглядеть так:
class Http410(Exception):
pass
Однако это вернет исключение, но обслуживает страницу с 500 ошибками. Как мне воссоздать волшебство исключения Http404? Я должен отметить, что мне нужно вызвать исключение из моих моделей (не представлений), поэтому я не могу просто вернуть HttpResponseGone.
Заранее спасибо!
Обновление:
Я сбит с толку, потому что в django.http функция Http404 выглядит просто:
class Http404(Exception):
pass
Итак, если я сделаю то же самое и создам свою функцию Http410, я бы предположил, что это будет выглядеть так:
class Http410(Exception):
pass
Однако это вернет исключение, но обслуживает страницу с 500 ошибками. Как мне воссоздать волшебство исключения Http404? Я должен отметить, что мне нужно вызвать исключение из моих моделей (не представлений), поэтому я не могу просто вернуть HttpResponseGone.
Заранее спасибо!
Обновление: Я полностью осведомлен о HttpResponseGone и упомянул об этом в своем первоначальном вопросе. Я уже знаю, как вернуть это в свои представления. Мой вопрос: как вы вызываете исключение Http 410 аналогично тому, как вы вызываете исключение Http 404? Я хочу иметь возможность вызывать это исключение где угодно, а не только в моих представлениях. Спасибо!