Skip to content Skip to sidebar Skip to footer

Update Existing Table/model Column/fields?

How can I update a tables columns and column data types in PeeWee? I have already created the table Person in the database from my model. But I've now added some new fields to the

Solution 1:

From the documentation: http://docs.peewee-orm.com/en/latest/peewee/example.html?highlight=alter

Adding fields after the table has been created will required you to either drop the table and re-create it or manually add the columns using an ALTER TABLE query.

Alternatively, you can use the schema migrations extension to alter your database schema using Python.

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

# Postgres example:
my_db = PostgresqlDatabase(...)
migrator = PostgresqlMigrator(my_db)
title_field = CharField(default='')
status_field = IntegerField(null=True)

migrate(
    migrator.add_column('some_table', 'title', title_field),
    migrator.rename_column('some_table', 'pub_date', 'publish_date'),
    migrator.add_column('some_table', 'status', status_field),
    migrator.drop_column('some_table', 'old_column'),
)

And a lot many other operations are possible.

So, first you will need to alter the table schema, and then, you can update your model to reflect those changes.

Post a Comment for "Update Existing Table/model Column/fields?"