搜索

epub文档 peewee Documentation Release 3.1.0

370.77 KB 332 页 0 下载 91 浏览 0 评论 0 收藏
语言 格式 评分
英语
.epub
3
摘要
Peewee 是一个简单且小巧的 Python ORM,支持 SQLite、MySQL 和 PostgreSQL。它提供模型定义、数据存储和检索功能,支持事务管理、查询执行和数据库连接管理。文档还介绍了如何安装和测试、扩展模块的使用以及如何为新数据库添加驱动程序。
AI总结
# Peewee ORM 3.1.0 文档总结 ## 1. 简介 - **Peewee** 是一个简单而强大的ORM(对象关系映射)工具,基于Python开发,支持Python 2.7+ 和 3.4+。 - **核心特性**: - 小巧且功能丰富,易于学习和使用。 - 内置支持 SQLite、MySQL 和 PostgreSQL。 - 提供丰富的扩展功能(如 PostgreSQL 的 HStore、JSON、数组支持,SQLite 的全文搜索,Schema 迁移等)。 - **代码托管**:[GitHub](https://github.com/coleifer/peewee) --- ## 2. 安装与测试 - **PyPI 安装**:`pip install peewee` - **从 GitHub 克隆**: ```bash git clone https://github.com/coleifer/peewee.git cd peewee python setup.py install ``` - **测试**:运行测试套件:`python runtests.py` --- ## 3. 快速入门 - **核心概念**: - **模型定义**:通过定义 `Model` 类来映射数据库表。 - **数据存储**:通过模型实例或ORM方法将数据保存到数据库。 - **数据检索**:通过查询构建器或直接执行SQL语句从数据库中检索数据。 - **示例**: ```python from peewee import * db = SqliteDatabase('people.db') class Person(Model): name = CharField() # Meta 配置数据库 class Meta: database = db ``` --- ## 4. 模型定义 - **模型类**:对应数据库表。 - **字段实例**:对应表中的列。 - **模型实例**:对应表中的一行数据。 - **定义模型**: ```python class Person(Model): name = CharField() age = IntegerField() ``` --- ## 5. 数据存储与检索 - **存储数据**: ```python person = Person(name='Alice', age=30) person.save() ``` - **检索数据**: ```python for person in Person.select(): print(person.name) ``` --- ## 6. 事务管理 - **原子操作**: ```python with db.atomic() as transaction: try: save_some_objects() except Exception: transaction.rollback() ``` - **事务嵌套**:支持多层事务,异常时回滚,正常执行时提交。 --- ## 7. 扩展支持 - **PostgreSQL**:支持 HStore、JSON、数组等高级功能。 - **SQLite**:支持全文搜索、Schema 迁移等扩展。 - **其他数据库**:通过 DB-API 2.0 接口扩展支持更多数据库。 --- ## 8. 贡献指南 - **提交补丁**: - 提交前在 GitHub 上创建问题描述变更。 - 补丁需包含单元测试和文档。 - **报告错误**: - 提供错误信息、复现代码、Peewee 版本和数据库类型。 - **回答问题**:在 GitHub 或邮件列表中帮助解决问题。 --- ## 9. 数据库支持 - **初始化数据库**: ```python db = SqliteDatabase('my.db') db.connect() ``` - **连接 URL**: ```python db = PostgresqlDatabase('mydb', user='postgres', password='secret') ``` - **动态定义数据库**: ```python db = Database('sqlite', **{'database': 'my.db'}) ``` --- ## 10. 执行查询 - **执行 SQL**: ```python db.execute_sql("SELECT * FROM users WHERE status = ?", (ACTIVE,)) ``` - **查询日志**: ```python import logging logger = logging.getLogger('peewee') logger.setLevel(logging.DEBUG) logger.addHandler(logging.StreamHandler()) ``` --- ## 11. 事务与连接管理 - **事务上下文管理器**:`db.atomic()` 支持嵌套事务。 - **连接管理**: ```python db.connect() db.close() ``` --- ## 12. 新功能与示例 - **3.0 版本更新**:新增查询优化和新特性。 - **示例应用**:提供“推特风格”Web 应用教程。 --- ## 13. 常见问题与错误 - **错误类型**:`PeeweeException`、`OperationalError`、`ProgrammingError`。 - **FAQ**:文档中提供常见问题解答。 --- ## 总结 Peewee 是一个简洁而强大的 ORM 工具,适合快速开发数据库驱动的应用。其核心优势包括轻量级、易于学习、支持多种数据库以及丰富的扩展功能。通过文档提供的教程和示例,开发者可以快速上手并高效使用 Peewee 进行数据库操作。
P1
P2
P3
P4
P5
P6
P7
P8
P9
P10
P11
P12
下载文档到本地,方便使用
- 可预览页数已用完,剩余 320 页请下载阅读 -
文档评分
请文明评论,理性发言.