Почему не загружается бутылочный сервер?
Я не совсем понимаю, почему сервер бутылочного типа не работает:
if __name__ == '__main__':
start = datetime.now()
db = Database(force_refresh_cache=False,
timestamp_filename='timestamp.pickle',
schema_filename='schema.pickle')
print datetime.now(), 'Took:', (datetime.now() - start).total_seconds()
run(host='localhost', port=80, reloader=True, debug=True)
Когда я закомментирую конструкцию БД; сервер работает.
В обоих случаях я получаю строку "Took: [секунд]" с меткой времени, которая подразумевает, что раньше ошибки не было.
1 ответ
Решение
Проблема заключается в коде уровня модуля и, возможно, в том, что вы используете переключатель перегрузчика. Проверьте это.
Весь код уровня модуля запускается как минимум дважды при включенном перегрузчике. Я не проверял это, но это имело бы смысл, поскольку он не мог бы порождать ребенка, если БД уже была связана.
попробуй это:
if __name__ == '__main__':
start = datetime.now()
db = Database(force_refresh_cache=False,
timestamp_filename='timestamp.pickle',
schema_filename='schema.pickle')
print datetime.now(), 'Took:', (datetime.now() - start).total_seconds()
run(host='localhost', port=80, debug=True)