python simple and small ORM Peewee(矮小的) 入门篇

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 关系表

ThingCorresponds to…
ModelDatabase table
Field instanceColumn on a table
Model instanceRow in a database table

转载于:https://my.oschina.net/heli/blog/1611029

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值