python simple and small ORM Peewee(矮小的) 入門篇
阿新 • • 發佈:2018-01-22
imp down where div 框架 ins http tps .com
python ORM 多種多樣,如:Django ORM , SQLAlchemy , SqlObject , 今天我們來介紹一款小巧精悍框架,支持的數據庫: sqlite,mysql,postgresql , 支持的Python版本: 2.6+ and 3.2+
官方文檔鏈接
1. 安裝peewee
pip
pip install peewee
source install
git clone https://github.com/coleifer/peewee.git cd peewee python setup.py install
2. hello world
hello_world.py
from peewee import * DB = SqliteDatabase(‘helloworld.db‘) class BaseModle(Modle): """ 基礎模型 """ class Meta(): database = DB class HelloWorld(BaseModle): """ hello world模型 peewee模型及數據庫表,表及模型 """ hwid = PrimaryKeyField(unique=True) hwcontent = CharField() @classmethod def save_info(cls, hw_content): """ 保存數據 "" HelloWorld(hwcontent=hw_content).save() @classmethod def select_info(cls, hw_content=None): """ 查詢數據 """ if hw_content: cls.select().where(HelloWorld.hwcontent == hw_content) else: cls.select()
test_hello_world.py
from hello_world import DB, HelloWorld
def db_test():
DB.create_tables([HelloWorld], safe=True)
HelloWorld.save_info(‘hello world my peewee.‘)
if __name__ == ‘__main__‘:
db_test()
for hw in HelloWorld.select_info():
print(hw.hwcontent)
done
重點理解peewee vs database 關系表
Thing | Corresponds to… |
---|---|
Model | Database table |
Field instance | Column on a table |
Model instance | Row in a database table |
python simple and small ORM Peewee(矮小的) 入門篇