Backend - я написал скрипт на python, который создает файл csv после некоторой агрегации.
Интерфейс. После завершения метода и создания файла .csv и его сохранения в каталоге на сервере я хочу предложить пользователю сохранить файл .csv на своем локальном компьютере (как в Windows). подсказка, которую вы получаете, когда нажимаете «сохранить как ...» на веб-странице).
Это пример того, что я сделал так далеко от того, что я узнал в Вернуть файл Excel в приложении Flask и Загрузить файл при нажатии кнопки в веб-приложении? :
Пример кода:
with open(save_path + unique_filename + ".csv", 'w', encoding = 'utf8') as g:
writer = csv.writer(g, lineterminator = '\n')
writer.writerow(['name', 'place', 'location'])
HTML:
@app.route('/login', method='POST')
def do_login():
category = request.forms.get('category')
return '''
<html><body>
Hello. <a href="/getCSV"> Save Results </a>
</body></html>
'''
@app.route("/getCSV", methods = ['GET', 'POST'])
def getPlotCSV():
return send_from_directory(save_path + unique_filename + ".csv", as_attachment=True)
if __name__ == "__main__":
run(app, host = 'localhost', port = 8000)
Мои вопросы:
1) send_from_directory из флакона, каков эквивалент бутылки?
2) Где в коде я размещаю созданный мной csv, чтобы пользователь мог загрузить его на свой локальный компьютер?
3) Что еще не так с моим кодом?