当我使用这个函数上传文件时:
@app.route('/add_item', methods=['GET', 'POST'])
@login_required
def new_item():
error = None
form = AddItemForm(request.form)
if request.method == 'POST':
file = request.files['file']
if file and allowed_file(file.filename) and form.name.data != "" and form.description.data != "":
filename = secure_filename(file.filename)
file.save(os.path.join(app.config['UPLOADED_ITEMS_DEST'], filename))
new_item = Item(
filename,
form.name.data,
form.description.data,
form.price.data,
form.age.data,
form.particles.data,
form.category.data,
'1',
)
db.session.add(new_item)
db.session.commit()
return redirect(url_for('admin_items'))
else:
return render_template('admin_items.html', form=form, error=error)
if request.method == 'GET':
return redirect(url_for('admin_items'))
如何使用删除功能删除已上传的文件?目前我的删除函数只删除了项目的内容(描述,价格等),但实际上上传到文件夹中的文件没有被删除!这会产生问题!请问该如何解决?
以下是我的删除函数:
# Delete Items:
@app.route('/delete_item/<int:item_id>/', methods=['GET', 'POST'])
@login_required
def delete_item(item_id):
new_id = item_id
os.remove(os.path.join(app.config['UPLOADED_ITEMS_DEST'], filename))
db.session.query(Item).filter_by(item_id=new_id).delete()
db.session.commit()
return redirect(url_for('admin_items'))