国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python的Flask框架與數據庫連接的教程

2020-02-23 00:47:55
字體:
來源:轉載
供稿:網友

 命令行方式運行Python腳本

在這個章節中,我們將寫一些簡單的數據庫管理腳本。在此之前讓我們來復習一下如何通過命令行方式執行Python腳本.

如果Linux 或者OS X的操作系統,需要有執行腳本的權限。例如:

chmod a+x script.py

該腳本有個指向使用解釋器的命令行。再腳本賦予執行權限后就可以通過命令行執行,就像這樣: like this:

./script.py <arguments>

然而,在Windows系統上這樣做是不行的,你必須提供Python解釋器作為必選參數,如:

代碼如下:flask/Scripts/python script.py <arguments>

為了避免Python解釋器路徑輸入出錯,你可以將你的文件夾microoblog/flask/Scripts添加到系統路徑,確保能正常顯示Python解釋器。

從現在開始,在Linux/OS X上的語句簡潔。如果你使用Windows系統請記得轉換語句。 
 
在Flask使用數據庫

我們將使用Flask-SQLAlchemy 的擴展來管理數據庫。由SQLAlchemy項目提供的,已封裝了關系對象映射(ORM)的一個插件。

ORMs允許數據庫程序用對象的方式替代表和SQL語句。面向對象的操作被ORM轉化為數據庫命令。這樣就意味著,不用sql語句,讓Flask-SQLAlchemy為我們執行sql語句。
 
遷移

大多數數據庫教程都覆蓋了創建和使用一個數據庫的方法,但是沒有充分解決當應用程序擴展時數據庫更新的問題。通常,你會刪除舊的數據庫,然后再創建一個新的數據庫來達到更新的效果,這樣就丟失了所有的數據。如果這些數據創建起來很費勁,那么我們不得不寫導入導出的腳本了。

幸運的是,我們有了更好的方案.

我們現在可以使用SQLAlchemy-migrate做數據庫遷移的更新了,雖然它增加了數據庫啟動時的負擔,但這點小小的代價還是值得的,畢竟我們不用擔心手動遷移數據庫的問題了。

理論學習完畢,我們開始吧!

配置

我們的小程序使用sqlite數據庫。sqlite是小程序數據庫的最佳選擇,一個可以以單文件存儲的數據庫。

在我們的配置文件中添加新的配置項 (fileconfig.py):
 

import osbasedir = os.path.abspath(os.path.dirname(__file__)) SQLALCHEMY_DATABASE_URI = 'sqlite:///' + os.path.join(basedir, 'app.db')SQLALCHEMY_MIGRATE_REPO = os.path.join(basedir, 'db_repository')

SQLALCHEMY_DATABASE_URI是the Flask-SQLAlchemy必需的擴展。這是我們的數據庫文件的路徑。

SQLALCHEMY_MIGRATE_REPO 是用來存儲SQLAlchemy-migrate數據庫文件的文件夾。


最后,初始化應用的時候也需要初始化數據庫。這里是升級后的init文件(fileapp/__init):
 

from flask import Flaskfrom flask.ext.sqlalchemy import SQLAlchemy app = Flask(__name__)app.config.from_object('config')db = SQLAlchemy(app) from app import views, models            
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 织金县| 和静县| 屏南县| 山丹县| 绥德县| 久治县| 库尔勒市| 辽阳市| 辰溪县| 营山县| 静乐县| 根河市| 嵊泗县| 东明县| 郴州市| 兴仁县| 宝应县| 航空| 阳春市| 台中市| 来安县| 绵竹市| 婺源县| 临夏县| 永康市| 温州市| 双辽市| 垣曲县| 时尚| 巴马| 雷山县| 元朗区| 北辰区| 普宁市| 平山县| 上饶市| 安平县| 屯留县| 松阳县| 东兴市| 梁山县|