我對 Flask 處于初學(xué)者水平,正在嘗試創(chuàng)建一個網(wǎng)絡(luò)應(yīng)用程序。用戶將從文件資源管理器上傳照片,圖像將顯示在屏幕上(感謝我在這里找到的答案)。我的問題是,當我在確認頁面單擊“返回”時,我想重定向到文件上傳頁面(http://127.0.0.1:5000/upload),但它似乎根本不起作用。網(wǎng)址發(fā)生變化,但頁面仍處于 /uploadconfirmation 頁面,詢問用戶是否要繼續(xù)。我不確定這是否是由于我發(fā)現(xiàn)顯示圖像的代碼所致。任何幫助表示贊賞!圖片:代碼:main.pyimport osfrom flask import Flask, flash, request, redirect, url_for, render_template, send_from_directoryfrom werkzeug.utils import secure_filenameUPLOAD_FOLDER = 'C:/Users/yurik/OneDrive/FYPCode/code+images/FullProject/imagesUploaded'ALLOWED_EXTENSIONS = set(['png', 'jpg', 'jpeg', 'gif'])app = Flask(__name__)app.secret_key = "secret key"app.config['UPLOAD_FOLDER'] = UPLOAD_FOLDER# specifies max file size = 16MBapp.config['MAX_CONTENT_LENGTH'] = 16 * 1024 * 1024def allowed_file(filename): return '.' in filename and filename.rsplit('.', 1)[1].lower() in ALLOWED_EXTENSIONS# HOME:#index method,returns index.html@app.route('/home')def index(): return render_template('index.html')# UPLOAD FILE: @app.route('/upload')def upload_page(): return render_template('upload.html')@app.route('/', methods=['POST'])def upload_file(): if request.method == 'POST': # check if the post request has the file part if 'file' not in request.files: flash('No file part') return redirect(request.url) file = request.files['file'] if file.filename == '': flash('No file selected for uploading') return redirect(request.url) # file is uploaded to imagesUploaded folder in FullProject 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('file_confirm', filename=filename)) else: flash('Allowed file types are png, jpg, jpeg, gif') return redirect(request.url)
3 回答

qq_遁去的一_1
TA貢獻1725條經(jīng)驗 獲得超8個贊
您可以使用flask的url_for方法來獲取上傳頁面的url。
<a href="{{ url_for('upload_page') }}">Back</a>
注意: url_for 將路由方法名稱作為參數(shù),即 'upload_page' 而不是 'upload' 。

繁花如伊
TA貢獻2012條經(jīng)驗 獲得超12個贊
如果您希望能夠返回,請使用以下代碼:
#base.html (this code should be in every template)
window.onload=function(){localStorage.setItem("prev_page", location.href)}
function go_back(){window.location.href = localStorage.getItem("prev_page")};
下面的代碼將允許您有一個后退按鈕。
- 3 回答
- 0 關(guān)注
- 182 瀏覽
添加回答
舉報
0/150
提交
取消