小编Sai*_*imu的帖子

Flask下载文件

我正在尝试使用Flask创建一个Web应用程序,让用户上传文件并将其提供给其他用户.现在,我可以正确地将文件上传到upload_folder.但我似乎找不到让用户下载它的方法.

我将文件名的名称存储到数据库中.

我有一个服务于数据库对象的视图.我也可以删除它们.

@app.route('/dashboard', methods=['GET', 'POST'])
def dashboard():

    problemes = Probleme.query.all()

    if 'user' not in session:
        return redirect(url_for('login'))

    if request.method == 'POST':
        delete = Probleme.query.filter_by(id=request.form['del_button']).first()
        db.session.delete(delete)
        db.session.commit()
        return redirect(url_for('dashboard'))

    return render_template('dashboard.html', problemes=problemes)
Run Code Online (Sandbox Code Playgroud)

在我的HTML中我有:

<td><a href="{{ url_for('download', filename=probleme.facture) }}">Facture</a></td>
Run Code Online (Sandbox Code Playgroud)

和下载视图:

@app.route('/uploads/<path:filename>', methods=['GET', 'POST'])
def download(filename):
    return send_from_directory(directory=app.config['UPLOAD_FOLDER'], filename=filename)
Run Code Online (Sandbox Code Playgroud)

但它正在回归:

未找到

在服务器上找不到请求的URL.如果您手动输入了URL,请检查拼写,然后重试.

我只想将文件名链接到对象并让用户下载它(对于同一视图中的每个对象)

python download flask flask-sqlalchemy

39
推荐指数
4
解决办法
9万
查看次数

标签 统计

download ×1

flask ×1

flask-sqlalchemy ×1

python ×1