python flask sqlite3 g 數據庫web應用實例

#先創建一個數據庫
import sqlite3
db=sqlite3.connect("e:/tests/flask_sqlite3_test.db")
cursor=db.cursor()
cursor.execute("CREATE TABLE IF NOT EXISTS users (name TEXT);")
db.commit()
db.close()
print("數據庫已經創建")

 

import sqlite3
from flask import Flask,g,request

DATABASE = 'e:/tests/flask_sqlite3_test.db'

def get_db():
    db = getattr(g, '_database', None)
    if db is None:
        db = g._database = sqlite3.connect(DATABASE)
    return db

app=Flask(__name__)
    
@app.teardown_appcontext
def close_connection(exception):
    db = getattr(g, '_database', None)
    if db is not None:
        db.close()
        print("db closed")
        
        
@app.route("/",methods=["POST","GET"])
def hello():
    html="""
        <form action="/" method="post">
            <input type="text" name="user" />
            <input type="submit" />        
        </form>
    """
    if request.method=="GET":
        return html
    else:
        user=request.form.get("user")
        db=get_db()
        cursor=db.cursor()
        sql="INSERT INTO users VALUES('{}')".format(user)
        cursor.execute(sql)
        db.commit()
        cursor.execute("SELECT * FROM users")
        rs=cursor.fetchall()
        s=""
        for r in rs:
            s+=r[0]+"<br/>"
        return html+s
        
if __name__=="__main__":
    app.run(host="0.0.0.0")

依次運行以上兩個程序

在瀏覽器輸入如下地址,就可以運行了

http://localhost:5000

 

也可以用通過ipconfig查找到本機的ip地址後,在同一局域網中的用戶就可以通過ip訪問您的應用了。

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