Ошибка подтверждения: сервер Flask останавливается после запуска сценария - PullRequest
0 голосов
/ 08 декабря 2018

У меня есть приложение-колба, которое, когда пользователь нажимает кнопку на странице индекса, запускает создание отчета и его загрузку в браузер с помощью функции send_file ().

Каждый раз, когдаОтчет создан и загружен, сервер останавливается, и я получаю ошибку ниже в терминале.Его нужно перезапускать каждый раз, и я не могу понять, как это исправить.Есть идеи?:)

файл flask_app.py:

from flask import Flask, render_template, request, url_for, flash
import create_report
from flask_debugtoolbar import DebugToolbarExtension
from flask import send_file

app = Flask(__name__)
filename = ""

@app.route("/")
def index():
    return render_template("index.html")

@app.route("/handle_data", methods=['GET', 'POST'])
def handle_data():
    text = request.form['accountinput']
    preprocessed_text = text.lower()
    filename = create_report.start_script(preprocessed_text)
    path = "reports/" + filename
    return send_file(path, as_attachment=True)

if __name__ == '__main__':
    app.run(debug=True)

Ошибка в терминале:

Assertion failed: (NSViewIsCurrentlyBuildingLayerTreeForDisplay() != currentlyBuildingLayerTree), function NSViewSetCurrentlyBuildingLayerTreeForDisplay, file /BuildRoot/Library/Caches/com.apple.xbs/Sources/AppKit/AppKit-1561.60.100/AppKit.subproj/NSView.m, line 14485.

1 Ответ

0 голосов
/ 08 декабря 2018

Вы должны запустить вашу программу с

import matplotlib
matplotlib.use('Agg')

, поскольку create_report модуль использует matplotlib, а для matplotlib это обычный случай .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...