中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Flask框架連接數據庫的方法

發布時間:2020-08-06 11:13:12 來源:億速云 閱讀:896 作者:小新 欄目:編程語言

這篇文章主要介紹了Flask框架連接數據庫的方法,具有一定借鑒價值,需要的朋友可以參考下。希望大家閱讀完這篇文章后大有收獲。下面讓小編帶著大家一起了解一下。

Flask不能直接連接數據庫,需要借助于ORM(Object Relational Mapper)。在這一部分,我們將借助于SQLAlchemy使用Postgres數據庫。

Flask框架連接數據庫的方法

安裝Flask-SQLAlchemy和Postgres

首先安裝flask-sqlalchemy:

$ pip install flask-sqlalchemy

然后從官方下載并安裝postgres:https://postgresapp.com/

創建數據庫

在終端中使用下面的命令創建一個appdb數據庫:

$ createdb appdb

更新應用配置

修改app.config,添加數據庫相關的配置信息:

app.config['DEBUG'] = True
app.config['SQLALCHEMY_DATABASE_URI']='postgresql://localhost/appdb'
SQLALCHEMY_TRACK_MODIFICATIONS = True
db = SQLAlchemy(app)

然后在代碼中就可以使用這些配置數據了:

from flask import Flask, request, render_template
from flask_sqlalchemy import SQLAlchemy
# Settingsapp = Flask(__name__)
app.config['DEBUG'] = Trueapp.config['SQLALCHEMY_DATABASE_URI'] = 'postgresql://localhost/appdb'
db = SQLAlchemy(app)@app.route('/')def hello_world():
    return 'Hello, World!'if __name__ == '__main__':
    app.run()

現在,讓我們創建第一個模型(Model)。所有模型的基類是db.Model,使用Column來定義數據列:

class Post(db.Model):
    id = db.Column(db.Integer(), primary_key=True)
    title = db.Column(db.String(80), unique=True)
    post_text = db.Column(db.String(255))
    
    def __init__(self, title, post_text):
        self.title = title
        self.post_text = post_text

在代碼中使用模型:

from flask import Flask
from flask_sqlalchemy import SQLAlchemy
app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'postgresql://localhost/testdb'
db = SQLAlchemy(app)
class Post(db.Model):
    id = db.Column(db.Integer(), primary_key=True)
    title = db.Column(db.String(80), unique=True)
    post_text = db.Column(db.String(255))
    def __init__(self, title, post_text):
        self.title = title
        self.post_text = post_text
@app.route('/')
def index():
    return "Hello World"
app = Flask(__name__)
if __name__ == "__main__":
    app.run()

感謝你能夠認真閱讀完這篇文章,希望小編分享Flask框架連接數據庫的方法內容對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,遇到問題就找億速云,詳細的解決方法等著你來學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

如皋市| 资阳市| 睢宁县| 雷波县| 额尔古纳市| 东丽区| 安泽县| 曲阳县| 平罗县| 丹凤县| 阳江市| 南通市| 贞丰县| 涟源市| 慈溪市| 承德市| 衢州市| 曲麻莱县| 金寨县| 米林县| 兴城市| 马山县| 丹东市| 贵溪市| 个旧市| 新河县| 任丘市| 宁夏| 英吉沙县| 龙口市| 徐汇区| 信阳市| 余干县| 肥城市| 富锦市| 高阳县| 六枝特区| 曲阜市| 石首市| 彰武县| 高州市|