python - 将文件保存在名称为用户名的文件夹中
问题描述
如何使用用户名将文件上传到文件夹。
当我在我的服务器上上传文件时 - 文件总是保存在随机名称的目录中。我该如何解决?
app.config['UPLOAD_FOLDER'] = os.path.dirname(os.path.abspath(__file__))
def login_required(f):
@wraps(f)
def wrapper(*args, **kwargs):
if 'current_user' not in session:
abort(401)
if redis.get(session['current_user'])==None:
abort(401)
return f(*args, **kwargs)
return wrapper
@app.route("/slyko/dl/upload", methods=['POST', 'GET'])
@login_required
def upload():
token = request.form['token']
try:
user = jwt.decode(token.encode(), app.jwt_secret_key, algorithm='HS256')
except jwt.ExpiredSignatureError:
return abort(401)
if request.method == 'POST':
if 'file' not in request.files:
flash('No file part')
return redirect(request.url)
file = request.files['file']
if file.filename == '':
flash('no selected file')
return redirect(request.url)
if file and allowed_file(file.filename):
filename = secure_filename(file.filename)
file.save(os.path.join(app.config['UPLOAD_FOLDER'] + "/" + session.get("current_user"), filename))
return redirect('http://127.0.0.1:5003/slyko/uploading', filename=filename)
解决方案
推荐阅读
- python - docker hub 你是否为每个图像创建一个存储库
- javascript - 如何使用 Pi Vision Web Api 获取过滤后的数据
- excel - 如果包含部分文本/字符,则 Excel 条件格式
- tensorflow - 如何复制 TF hub 保存的模型架构?
- c++ - 尝试为 Ubuntu 18.04 和 ARM Cortex-A9 交叉编译 C++ 代码时出错
- node.js - 从 BullMQ 完成的作业中检索结果的推荐方法是什么?
- firebase - 从谷歌登录为flutter firebase添加用户数据
- java - Java while 循环最后需要条件变量(为什么?)
- c# - 如何防止 Visual Studio 格式化特定代码?
- winapi - 如何在将原始图像文件写入 PhysicalDrive 时防止 Windows 访问和检测新卷?