Peewee – 使用PostgreSQL
Peewee也支持PostgreSQL数据库。它有 PostgresqlDatabase 类用于此目的。在本章中,我们将看到如何在Peewee模型的帮助下连接到Postgres数据库并在其中创建一个表。
与MySQL一样,我们不可能用Peewee的功能在Postgres服务器上创建数据库。该数据库必须使用Postgres shell或PgAdmin工具手动创建。
首先,我们需要安装Postgres服务器。对于windows操作系统,我们可以下载https://get.enterprisedb.com/postgresql/postgresql-13.1-1-windows-x64.exe ,然后安装。
接下来,使用pip安装程序安装Postgres的Python驱动 - Psycopg2 包。
pip install psycopg2
然后启动服务器,可以通过PgAdmin工具或psql shell。我们现在可以创建一个数据库了。运行下面的Python脚本,在Postgres服务器上创建mydatabase。
import psycopg2
conn = psycopg2.connect(host='localhost', user='postgres', password='postgres')
conn.cursor().execute('CREATE DATABASE mydatabase')
conn.close()
检查数据库是否已经创建。在psql shell中,可以用\l命令进行验证 —
为了声明MyUser模型并在上述数据库中创建一个同名的表,请运行以下Python代码 —
from peewee import *
db = PostgresqlDatabase('mydatabase', host='localhost', port=5432, user='postgres', password='postgres')
class MyUser (Model):
name=TextField()
city=TextField(constraints=[SQL("DEFAULT 'Mumbai'")])
age=IntegerField()
class Meta:
database=db
db_table='MyUser'
db.connect()
db.create_tables([MyUser])
我们可以验证表是否被创建。在shell中,连接到mydatabase并获得其中的表的列表。
为了检查新创建的MyUser数据库的结构,在shell中运行以下查询。