Python Web框架Flask下网站开发入门实例

2019-10-05 08:57:28丽君

@app.route('/upload', methods=['GET','POST'])
def upload():
    if request.method == 'POST':
        username = request.form['username']
        file = request.files['img']
        filename = file.filename
        file.save(os.path.join(imagepath,filename))
        return "<img src='static/images/%s' alt=''/>" % filename
    else:
        return render_template('upload.html')

@app.route('/login/', methods=['GET','POST'])
def login():
    if request.method == 'POST':
        username = request.form.get('username')
        if username in user_list:
            response = make_response(redirect('/'))
            response.set_cookie('username', value=username, max_age=300)
            session['islogin'] = '1'
            return response
        else:
            session['islogin'] = '0'
            return redirect('/login/')
    else:
        return render_template('login.html')

if __name__ == '__main__':
    app.run(debug=True,host='0.0.0.0',port=5000)

主要有首页、注册、登录、上传页面。

blog.py主要是展示了Flask中常见功能用法:路由,数据库操作,cookie,session,redirect,表单,文件上传,调试,Web服务器的IP和端口,静态文件读取等。

3、首页模板index.html

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8"/>
    <title>Flask DEMO</title>
    <link rel="stylesheet" type="text/css" href="static/css/index.css"/>
</head>
<body>
    <div class="header">
        {%if islogin == '1' %}
        <h1>Welcome ,{{username}}!</h1>
        {%else%}
        <h1>{{username}}!</h1>
        {%endif%}
        <div class="nav">
            <ul>