Flask入門-上傳的問題

flask.py

from flask import Flask, render_template, request, redirect, url_for
from werkzeug.utils import secure_filename
from os import path

app = Flask(__name__)


@app.route('/')
def hello_world():
    return render_template('index.html', title='Welcome')


@app.route('/services')
def services():
    return 'Servisce'


@app.route('/about')
def about():
    return 'About'


@app.route('/user/<int:user_id>')
def user(user_id):
    return 'User %d' % user_id


@app.route('/login', methods=['GET', 'POST'])
def login():
    if request.method == 'POST':
        username = request.form['username']
        password = request.form['password']
    else:
        username = request.args['username']
    return render_template('login.html', method=request.method)


@app.route('/upload', methods=['GET', 'POST'])
def upload():
    if request.method == 'POST':
        file = request.files['file']
        basepath = path.abspath(path.dirname(__file__))
        upload_path = path.join(basepath, 'static/uploads')
        filename = secure_filename(file.filename)
        file.save(path.join(upload_path,filename))
        return redirect(url_for('upload'))
    return render_template('upload.html')


if __name__ == '__main__':
    app.run(debug=True)


upload.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title></title>
</head>
<body>
<h1>文件上傳實例</h1>
<form action="" method="post" enctype="multipart/form-data">
    <p>
        <input type="file" name="file">
        <input type="submit" value="Upload">
    </p>
</form>
</body>
</html>


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章