psycopg2中的Python Alter语句未更新Peewee

问题描述 投票:0回答:1

[使用pscopg2在pewee的ORM中在python中使用Postgres DB。我使用pewee创建了初始表,我需要执行ALTER语句:

improt psycopg2

cur.execute("ALTER TABLE Test_Table ADD COLUMN filename VARCHAR(100)")
conn.commit()

执行后,我从Test_Table中执行select *,并且该表存在。

但是,当我使用pewee ORM进行选择时,该列文件名在Test_Table中不存在。

为了使该ALTER语句使用peewee出现,我需要做什么?

python psycopg2 peewee
1个回答
0
投票

Peewee模型不是根据数据库架构的状态动态创建的。它们是声明性的。

因此,如果要在数据库中添加一列,则应在模型类中添加一个相应的字段实例。通常,此操作是脱机完成的(例如,不在应用程序运行时的中间)。

请参阅此处以获取有关Peewee的架构迁移实用程序的文档:

http://docs.peewee-orm.com/en/latest/peewee/playhouse.html#migrate

© www.soinside.com 2019 - 2024. All rights reserved.