国产成人精品无码青草_亚洲国产美女精品久久久久∴_欧美人与鲁交大毛片免费_国产果冻豆传媒麻婆精东

15158846557 在線咨詢 在線咨詢
15158846557 在線咨詢
所在位置: 首頁 > 營銷資訊 > 網(wǎng)站運營 > Flask入門——從無到有構(gòu)建一個網(wǎng)站(五)創(chuàng)建數(shù)據(jù)庫

Flask入門——從無到有構(gòu)建一個網(wǎng)站(五)創(chuàng)建數(shù)據(jù)庫

時間:2023-05-24 03:18:02 | 來源:網(wǎng)站運營

時間:2023-05-24 03:18:02 來源:網(wǎng)站運營

Flask入門——從無到有構(gòu)建一個網(wǎng)站(五)創(chuàng)建數(shù)據(jù)庫:Hello,小伙伴們好久不見,我是桃子。今天我們開始網(wǎng)站的開發(fā)的其中比較重要的一步,是的,沒錯就是建庫,不知道小伙伴還記不得,我之前說過,不需要我們?nèi)?SQL 語句,因為我們將會使用 Flask-SQLAlchemy擴展,當然為了使用它,我們需要一點設置,一旦配置完成之后我們需要做的就是,定義模型。

模型這個術(shù)語表示程序使用的持久化實體。在ORM 中,模型一般是一個Python 類,類中
的屬性對應數(shù)據(jù)庫表中的列。
Flask-SQLAlchemy 創(chuàng)建的數(shù)據(jù)庫實例為模型提供了一個基類以及一系列輔助類和輔助函
數(shù),可用于定義模型的結(jié)構(gòu)。 —— 《Flask Web 開發(fā)》

好了廢話少說,讓我們步入正題。



配置SQLAlchemy

這里我們將會使用 MySQL,關(guān)于 SQLite 配置更簡單,在最后我會簡單介紹一下,創(chuàng)建 test.py 文件。

from flask import Flaskfrom flask_sqlalchemy import SQLAlchemyapp = Flask(__name__)app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql://root:@localhost:3306/shares_dev?charset=utf8' # mysql://username:password@hostname/databaseapp.config['SQLALCHEMY_COMMIT_ON_TEARDOWN'] = True #這里是個很有趣的地方db = SQLAlchemy(app)

關(guān)于配置其實就這么一點,是不是很簡單,回到我注釋那個地方,為什么很有趣,我這里就不說了,直接貼個鏈接Remove SQLALCHEMY_COMMIT_ON_TEARDOWN

配置完成之后,就是對模型的定義。



定義模型

通樣在 test.py 中定義模型,最后開發(fā)過程中,這兩項自然是分開創(chuàng)建不同的文件的。

class Posts(db.Model): __tablename__ = 'posts' id = db.Column(db.Integer, primary_key=True) userid = db.Column(db.Integer) title = db.Column(db.String(128)) content = db.Column(db.Text) posttime = db.Column(db.DateTime) prarises = db.Column(db.Integer, default=0) views = db.Column(db.Integer, default=0) comments = db.Column(db.Integer, default=0) def __repr__(self): return '<Posts %r>' % self.idclass Comments(db.Model): __tablename__ = 'comments' id = db.Column(db.Integer, primary_key=True) postid = db.Column(db.Integer) username = db.Column(db.String(64)) comments = db.Column(db.Text) def __repr__(self): return '<Comments %r>' % self.id

這里簡單介紹一下 SQLAlchemy 列類型


SQLAlchemy 列選項

圖片來自 <Flask Web 開發(fā)>



數(shù)據(jù)庫操作

創(chuàng)建表

使用 db.create_all()函數(shù),讓 SQLAlchemy 根據(jù)模型類創(chuàng)建數(shù)據(jù)庫,在該文件所在文件目錄下,打開終端,然后進入到 Python 命令行,你也可以用 python test.py shell 這個命令



>>> from test import db>>> db<SQLAlchemy engine='mysql://root:@127.0.0.1:3306/shares?charset=utf8'>讓我們查看此時的數(shù)據(jù)庫,如下圖:

什么都沒有,別急,讓我們執(zhí)行以下 create_all()



>>> db.create_all()這個時候才看一下數(shù)據(jù)庫


大功告成!告別了SQL語句,是不是方便了許多,數(shù)據(jù)庫已經(jīng)創(chuàng)建了,下一節(jié)我們就開始試著去開發(fā)登錄注冊功能了。


最后,歡迎小伙伴掃描我頭像關(guān)注我的公共號~~和桃子用Python做有趣的事情~~

關(guān)鍵詞:創(chuàng)建,數(shù)據(jù),入門

74
73
25
news

版權(quán)所有? 億企邦 1997-2025 保留一切法律許可權(quán)利。

為了最佳展示效果,本站不支持IE9及以下版本的瀏覽器,建議您使用谷歌Chrome瀏覽器。 點擊下載Chrome瀏覽器
關(guān)閉