Peewee模型

Peewee API中Model子类对象对应已经建立连接数据库中的。它允许在 Model 类中定义的方法的帮助下执行数据库表操作。

一个用户定义的 Model 有一个或多个类属性,每个属性都是 Field 类的一个对象。Peewee 有许多子类用于保存不同类型的数据。示例有 TextField、DatetimeField 等。它们对应于数据库表中的字段或列。Meta 类中提到了关联数据库和表和模型配置的引用。以下属性用于特定配置

Meta 类属性

Meta 类属性详解如下:

index 属性和描述
1 Database 模型数据库
2 db_table 表名,用于存储数据,默认情况它是模型数据库的名字
3 Indexs 字段列表索引
4 primary_key 主键实例
5 Constraints 表约束列表
6 Schema 模型数据库模式
7 Temporary 临时表
8 depends_on 当前表创建时依赖另一个表
9 without_rowid 表示表没有rowid(仅限 SQLite)

以先代码定义mydatabase.db中模型类User

from peewee import *
db = SqliteDatabase('mydatabase.db')
class User (Model):
   name=TextField()
   age=IntegerField()
   class Meta:
      database=db
      db_table='User'
User.create_table()

create_table() 是一个Model类方法 等价于 CREATE TABLE,另外一个方法 save() 用于添加对应对象的行。

from peewee import *
db = SqliteDatabase('mydatabase.db')
class User (Model):
   name=TextField()
   age=IntegerField()
   class Meta:
      database=db
      db_table='User'

User.create_table()
rec1=User(name="Rajesh", age=21)
rec1.save()

模型类的方法

Model 类其他方法如下:

index Model 类和描述
1 alias() 创建模型类的别名,允许相同模型在查询中多次引用。
2 select() 表示 SELECT 查询操作。如果没有提供明确字段,默认查询方式为 SELECT*
3 update() 表示 UPDATE 查询函数
4 insert() 往表中插入新行
5 delete() 执行delete操作,通常使用where过滤
6 get() 从表中获取到单独一行,同时匹配提供的过滤条件
7 get_id() 实例方法返回一行的主键
8 save() 将对象的数据另存为新行。如果主键值已经存在,就会执行 UPDATE 操作
9 bind() 将model绑定到给定的数据库

酷客网相关文章:

赞(0)

评论 抢沙发

评论前必须登录!