如何使用Peewee MySQL删除/创建模式

时间:2019-04-30 12:05:11

标签: peewee

我知道我可以使用休假删除架构中的所有表。

database.drop_tables(database.get_tables())

但是有没有办法一起删除整个架构?

1 个答案:

答案 0 :(得分:0)

  

但是有没有办法一起删除整个架构?

我不确定您所说的“整个架构”是什么?

Peewee模型只是python类。您可以将所有模型类收集到一个列表中。我通常在项目中所做的工作是在入口点获得所有模型的列表:

from some_app.models import Foo, Bar, Baz
from other_app.models import Nug

MODELS = (Bar, Baz, Foo, Nug)

def recreate_tables():
    db.drop_tables(MODELS)
    db.create_tables(MODELS)

除此之外,它取决于您的数据库引擎。对于sqlite,您可以删除文件。对于MySQL或Postgres,您可以使用sql shell或各种sql命令。