1. 程式人生 > >【Flask】ORM模型創建及數據庫映射

【Flask】ORM模型創建及數據庫映射

class 重新 div Coding database utf OS spa alc

1.  用 declarative_base 根據 engine 創建一個ORM基類。
2. 用 Base 類作為基類來寫自己的ORM類。要定義 __tablename__ 類屬性,來指定這個模型映射到數據庫中的表名。
3. 創建屬性來映射到表中的字段,所有需要映射到表中的屬性都應該為Column類型
4. 使用`Base.metadata.create_all()`來將模型映射到數據庫中。
5. 一旦使用`Base.metadata.create_all()`將模型映射到數據庫中後,即使改變了模型的字段,也不會重新映射了

 1 # coding:utf-8
 2 # Author: liangjun.
3 4 from sqlalchemy import create_engine, Column, Integer, String 5 from sqlalchemy.ext.declarative import declarative_base 6 7 HOSTNAME = 127.0.0.1 8 PORT = 3306 9 DATABASE = sqlalchemy_first 10 USERNAME = root 11 PASSWORD = 123456 12 13 DB_URI = mysql+pymysql://{username}:{password}@{host}:{port}/{dbname}?charset=utf8
.format( 14 username=USERNAME, password=PASSWORD, host=HOSTNAME, port=PORT, dbname=DATABASE 15 ) 16 engine = create_engine(DB_URI) 17 Base = declarative_base(engine) 18 19 20 # 創建ORM模型 21 class Person(Base): 22 __tablename__ = person 23 id = Column(Integer, primary_key=True, autoincrement=True)
24 name = Column(String(length=50)) 25 age = Column(Integer) 26 27 # 模型映射到數據庫中 28 Base.metadata.create_all()

【Flask】ORM模型創建及數據庫映射