db_demo2.py
# encoding: utf-8
# 模型需要繼承自'db.Modle',然后需要映射到表中的屬性,必須寫成'db.Column'
# 的資料型別
# autoincrement代表主鍵是自增長的
# 需要呼叫'db.create_all()'來將模型真正的創建到資料庫中
from flask import Flask
from flask_sqlalchemy import SQLAlchemy
import config
app = Flask(__name__)
app.config.from_object(config)
db = SQLAlchemy(app)
# article表
# create table article(
# id int primary_key autoincrement,
# title varchar(100) not null,
# content text not null,
# )
class Article(db.Model):
__tablename__ = 'article'
id = db.Column(db.Integer, primary_key=True, autoincrement=True)
title = db.Column(db.String(100), nullable=False)
content = db.Column(db.Text, nullable=False)
db.create_all()
@app.route('/')
def hello_world():
# 增:
article1 = Article(title='aaa',content='bbb')
db.session.add(article1)
# 事務
db.session.commit()
return 'Hello World!'
if __name__ == '__main__':
app.run(debug=True)
____________________________________________________________________________________________________________________________________
config.py
# encoding: utf-8
# dialect+driver://username:password@host:port/database
DIALECT = 'mysql'
DRIVER = 'pymysql'
USERNAME = 'root'
PASSWORD = 'root'
HOST = '127.0.0.1'
PORT = '3306'
DATABASE = 'db_demo3'
SQLALCHEMY_DATABASE_URI = "{}+{}://{}:{}@{}:{}/{}?charset=utf8".format(
DIALECT,DRIVER,USERNAME,PASSWORD,HOST,PORT,DATABASE)
uj5u.com熱心網友回復:
代碼沒問題,運行了你的代碼確實也是有記錄的你確認網站運行起來并且在瀏覽器訪問了http://127.0.0.1:5000/是嗎?
你的myql里是否有記錄,你是怎么確認的?
main上面直接加一行hello_world呼叫一下有結果嗎?
hello_world()
if __name__ == '__main__':
app.run(debug=True)
uj5u.com熱心網友回復:
好像是我的那些包有問題,我把所有東西重新下載了一遍就可以了,謝謝你!轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/72002.html
