peewee两表联查方法
时间: 2023-05-22 17:00:52 浏览: 179
Peewee 提供了多种方式进行两表联查,其中最常用的方式是使用 `join()` 方法。以下是一个示例代码:
```python
from peewee import *
db = SqliteDatabase('my_database.db')
class User(Model):
name = CharField()
email = CharField()
class Meta:
database = db
class Post(Model):
user = ForeignKeyField(User, backref='posts')
title = CharField()
content = TextField()
class Meta:
database = db
# 进行两表联查
query = (User
.select(User, Post)
.join(Post)
.where(User.name == 'John'))
# 输出结果
for user in query:
print(user.name, user.email, user.posts.title, user.posts.content)
```
在上面的代码中,我们定义了两个模型 `User` 和 `Post`,并使用 `ForeignKeyField` 建立了它们之间的关系。然后,我们使用 `join()` 方法进行两表联查,并使用 `where()` 方法过滤出符合条件的数据。最后,我们遍历查询结果并输出。
阅读全文