本文執行個體講述了Python使用Flask-SQLAlchemy連接配接資料庫操作。分享給大家供大家參考,具體如下:
需要安裝flask
pip install flask
安裝Mysql-Python (這個是py的mysql驅動,這個在官方沒有win的支援,隻有第三方才有py2.7的whl)
pip install MySQL_python-1.2.5-cp27-none-win_amd64.whl
注:上述whl檔案也可點選此處連結下載下傳到本地安裝:https://www.lfd.uci.edu/~gohlke/pythonlibs/
安裝 Flask-SQLAlchemy
pipi install Flask-SQLAlchemy
注意,如果出現了編碼問題,安裝的時候,有可能是終端的編碼有問題,我換成了git bash shell就沒問題了。
myflask.py
#coding:utf-8
from flask import Flask
#安裝 python-mysql 因為沒有官方支援win版本,隻有網上有whl下載下傳
#pip install flask_sqlalchemy
from flask_sqlalchemy import SQLAlchemy
import config #config.py導入
app = Flask(__name__)
app.config.from_object(config) #SQLALchemy會自動從配置檔案讀取那個固定的URI字元串
db=SQLAlchemy(app)
db.create_all()
@app.route('/')
def hello_world():
return '你好世界'
if(__name__=='__main__'):
app.run(debug=True) #開啟debug模式,這裡如果出錯會直接有提示
config.py
#coding:utf-8
#dialect+driver://username:[email protected]:port/database
DIALECT='mysql'
DRIVER='mysqldb'
USERNAME='root'
PASSWORD='root'
HOST='127.0.0.1'
PORT='3306'
DATABASE='flask0'
#這個連接配接字元串變量名是固定的具體 參考 flask_sqlalchemy 文檔 sqlalchemy會自動找到flask配置中的 這個變量
SQLALCHEMY_DATABASE_URI='{}+{}://{}:{}@{}:{}/{}?charset=utf8'.format(DIALECT,DRIVER,USERNAME,PASSWORD,HOST,PORT,DATABASE)
運作看控制台:(有一些無關緊要的警告,可以不管)
D:\Python27\python.exe D:/PythonProjects/learn0/myflask.py
D:\Python27\lib\site-packages\flask_sqlalchemy\__init__.py:794: FSADeprecationWarning: SQLALCHEMY_TRACK_MODIFICATIONS adds significant overhead and will be disabled by default in the future. Set it to True or False to suppress this warning.
'SQLALCHEMY_TRACK_MODIFICATIONS adds significant overhead and '
D:\Python27\lib\site-packages\sqlalchemy\engine\default.py:470: Warning: Incorrect string value: '\xD6\xD0\xB9\xFA\xB1\xEA...' for column 'VARIABLE_VALUE' at row 478
cursor.execute(statement, parameters)
* Restarting with stat
D:\Python27\lib\site-packages\flask_sqlalchemy\__init__.py:794: FSADeprecationWarning: SQLALCHEMY_TRACK_MODIFICATIONS adds significant overhead and will be disabled by default in the future. Set it to True or False to suppress this warning.
'SQLALCHEMY_TRACK_MODIFICATIONS adds significant overhead and '
D:\Python27\lib\site-packages\sqlalchemy\engine\default.py:470: Warning: Incorrect string value: '\xD6\xD0\xB9\xFA\xB1\xEA...' for column 'VARIABLE_VALUE' at row 478
cursor.execute(statement, parameters)
* Debugger is active!
* Debugger PIN: 164-312-281
* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
127.0.0.1 - - [18/Oct/2017 16:01:03] "GET / HTTP/1.1" 200 -
127.0.0.1 - - [18/Oct/2017 16:01:04] "GET / HTTP/1.1" 200 -
127.0.0.1 - - [18/Oct/2017 16:01:06] "GET / HTTP/1.1" 200 -
學習python給大家推薦一個高品質的python學習裙:778口口747口口511