Что делать, если
blockquote>B::f
не было помечено как виртуальное? Является ли программа плохо сформированной, тогда?Да, это так. Потому что для того, чтобы переопределить что-то, что-то должно быть виртуальным. В противном случае это переопределяет , это скрывает . Итак, положительный ответ следует из цитаты в вашем вопросе.
Из документации 0.11
вы можете включить режим отладки, экспортировав переменную среды:
export FLASK_APP=/daemon/api/views.py # path to app
export FLASK_DEBUG=1
python -m flask run --host=0.0.0.0
Вы можете использовать app.run(debug=True)
для редактирования Werkzeug Debugger , как указано ниже, и я должен был знать.
debug=True
, вы фактически используете отладчик Werkzeug, поэтому он не является ни одним из них ;-)
– Sean Vieira
26 June 2013 в 02:02
print 'xyz'
будет печататься на консоли. Если вы хотите отлаживать в браузере, вам нужно будет принудительно вызвать ошибку, где вы хотите отлаживать. raise Exception('xyz')
. Это вызовет вывод отладки в окне браузера.
– bnlucas
28 June 2013 в 16:09
Можно также использовать расширение Flask Debug Toolbar , чтобы получить более подробную информацию, встроенную в отображаемые страницы.
from flask import Flask
from flask_debugtoolbar import DebugToolbarExtension
app = Flask(__name__)
app.debug = True
app.secret_key = 'development key'
toolbar = DebugToolbarExtension(app)
@app.route('/')
def index():
logging.warning("See this message in Flask Debug Toolbar!")
return "<html><body></body></html>"
Запустите приложение следующим образом:
FLASK_APP=main.py FLASK_DEBUG=1 flask run
import logging
(из стандартной библиотеки Python). Но это не требуется. Просто удалите строку logging ...
.
– turdus-merula
28 August 2017 в 18:47
Если вы используете код Visual Studio, замените
app.run(debug=True)
на
app.run()
. При включении внутреннего отладчика отключается отладчик VS Code.
Если вы используете его локально и хотите выполнить код:
python -m pdb script.py