Параметр debug
Параметр debug передаётся команде run
и включает отладочный режим работы приложения.
В этом режиме Bottle выводит подробные сообщения
об ошибках прямо в браузере, а также автоматически
перезагружает сервер при изменении исходного кода.
Параметр принимает булево значение: True
или False.
Синтаксис
python app.py --debug
Также параметр можно указать в коде через функцию run:
run(debug=True)
Пример
Давайте создадим простое приложение и запустим его в отладочном режиме:
from bottle import Bottle, run
app = Bottle()
@app.route('/')
def index():
return 'hello'
run(app, debug=True)
При запуске в терминале появится сообщение о том, что отладочный режим включён:
Bottle v0.13.4 server starting up (using WSGIRefServer())...
Listening on http://localhost:8080/
Hit Ctrl-C to quit.
Debug mode: on
Пример
Теперь давайте намеренно вызовем ошибку в обработчике:
from bottle import Bottle, run
app = Bottle()
@app.route('/')
def index():
return 1 / 0
run(app, debug=True)
В отладочном режиме вместо стандартной страницы ошибки браузер покажет подробную трассировку стека с указанием строки, в которой произошла ошибка:
ZeroDivisionError: division by zero
Traceback (most recent call last):
File "app.py", line 8, in index
return 1 / 0
Пример
Отладочный режим также удобен тем, что сервер автоматически перезагружается при изменении кода. Давайте изменим обработчик:
from bottle import Bottle, run
app = Bottle()
@app.route('/')
def index():
return 'article'
run(app, debug=True)
После сохранения файла сервер перезапустится сам, и при обновлении страницы мы увидим новый результат:
article