日期:2014-05-16  浏览次数:20404 次

peewee 一个轻量级的ORM(一)

peewee是一个轻量级的ORM,sf、github上都有。用的是大名鼎鼎的sqlalchemy内核,做了一个简单的包装,用纯python编写,显得十分轻便。

废话不多说,上 直接sudo pip install peewee即可。

[python] view plaincopy
  1. from peewee import *  
  2.   
  3. db = SqliteDatabase('test.db')#peewee.SqliteDatabase  
  4.   
  5. # create a base model class that our application's models will extend,这样我们后面的blog与entry就链接的是同一个数据库了。这个是从django借鉴来的  
  6. class BaseModel(Model):  
  7.     class Meta:  
  8.         database = db  
  9.   
  10.   
  11. class Blog(BaseModel):#创建表,Blog:表名,name:字段,CharField:字段类型,其实就是varchar。peewee.CharField  
  12.     name = CharField() # <-- VARCHAR  
  13.   
  14.   
  15. class Entry(BaseModel):  
  16.     headline = CharField()  
  17.     content = TextField() # <-- TEXT  
  18.     pub_date = DateTimeField() # <-- DATETIME  
  19.     blog = ForeignKeyField(Blog) # <-- INTEGER referencing the Blog table  

创建表

#建立连接
db.connect()

# 建立表
Blog.create_table()
Entry.create_table()

注意:严格来说,不是一定要connect()的,但这是一个好习惯

创建模型实例(实例化)

在我们的交互式脚本编辑器那试试吧,这样能立即看出效果

  1. Use the Model.create() classmethod:

    [python] view plaincopy
    1. >>> blog = Blog.create(name='Funny pictures of animals blog')  <