我看过其他几个问题,但不知道出了什么问题。我得到了以下错误:"FileNotFoundError: Errno 2没有这样的文件或目录:‘/上载\MRRtest.csv’“有人能帮忙吗?错误消息上的正反斜杠之间有什么区别?
谢谢
from flask import Flask, render_template, request, redirect, url_for, flash
from flask.ext.bootstrap import Bootstrap
from werkzeug import secure_filename
import os
app = Flask(__name__)
bootstrap = Bootstrap(app)
UPLOAD_FOLDER = '/uploads'
ALLOWED_EXTENSIONS = set(['csv'])
app.config['UPLOAD_FOLDER'] = UPLOAD_FOLDER
def allowed_file(filename):
return '.' in filename and \
filename.rsplit('.', 1)[1] in ALLOWED_EXTENSIONS
@app.route('/', methods=['GET', 'POST'])
def index():
if request.method == 'POST':
file = request.files['file']
if file and allowed_file(file.filename):
filename = secure_filename(file.filename)
file.save(os.path.join(app.config['UPLOAD_FOLDER'],filename))
return redirect(url_for('uploaded_file', filename=filename))
return render_template('index.html')我的index.html模板如下:
{% extends "base.html" %}
{% block title %}Flasky{% endblock %}
{% block page_content %}
<div class="page-header">
<h1>Upload File</h1>
<form action="" method=post enctype=multipart/form-data>
<p><input type=file name=file>
<input type=submit value=Upload>
</form>
</div>
{% endblock %}发布于 2016-03-15 15:56:30
/uploads意味着绝对链接(C:/upload),因此您应该使用upload/。
此外,您还可以使用来自https://stackoverflow.com/a/20257725/5851179的漂亮片段。
APP_ROOT = os.path.dirname(os.path.abspath(__file__))
UPLOAD_FOLDER = os.path.join(APP_ROOT, 'static/uploads')
app.config['UPLOAD_FOLDER'] = UPLOAD_FOLDER发布于 2016-03-15 15:56:31
刚刚从注释中了解到,我的上载目录与我的run.py文件位于同一个目录中,而不是index.html正在运行的“模板”目录。我修改了
UPLOAD_FOLDER = '/uploads'至
UPLOAD_FOLDER = './uploads'现在我将致力于构建"url for终结点“
谢谢你的帮助。
https://stackoverflow.com/questions/36015756
复制相似问题