Bottle.py корабли с импортом для обработки метаданных HTTPErrors и маршрута к функции.
Во-первых, документация утверждает, что я могу (а также несколько примеров):
from bottle import error
@error(500)
def custom500(error):
return 'my custom message'
однако при импорте этой ошибки оператора не разрешено, но при запуске приложение игнорирует это и просто направляет меня на общую страницу ошибок.
Я нашел способ обойти это:
from bottle import Bottle
main = Bottle()
@Bottle.error(main, 500)
def custom500(error):
return 'my custom message'
Но этот код не позволяет мне встраивать мои ошибки в отдельный модуль, чтобы контролировать гадость, которая возникла бы, если бы я сохранил их в моем модуле main.py, потому что первый аргумент должен быть экземпляром бутылки.
Итак, мои вопросы:
-
Кто-нибудь еще испытал это?
-
Почему ошибка, кажется, не разрешена только в моем случае (я установил из установочной бутылки)?
-
Есть ли простой способ импортировать мою маршрутизацию ошибок из отдельного модуля python в основное приложение?