Как удалить / создать схему с peewee mysql - PullRequest
0 голосов
/ 30 апреля 2019

Я знаю, что могу использовать пар, чтобы отбросить все таблицы в схеме.

database.drop_tables(database.get_tables())

Но есть ли способ удалить всю схему целиком?

1 Ответ

0 голосов
/ 30 апреля 2019

Но есть ли способ на самом деле полностью удалить всю схему?

Я не уверен, что вы имеете в виду под "всей схемой"?

Peeweeмодели просто классы питона.Вы можете собрать все свои классы моделей в список или что угодно.Что я обычно делаю в своих проектах, так это в точке входа список всех моделей:

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 или различные команды sql.

...